Files
OpenFlare/docs/en/reference/repository.md
T
2026-05-28 23:00:48 +08:00

2.2 KiB

Repository Layout

You will learn: What the Server, Agent, frontend, scripts, and documentation directories in the OpenFlare repository are responsible for, and which layer to place your logic when contributing code.

Path Responsibility
openflare_server Gin + GORM + SQLite/PostgreSQL monolithic control plane
openflare_server/web Next.js 15 App Router management console frontend, statically exported and hosted by the Go Server
openflare_agent Go monolithic Agent, running on the node side
scripts Helper scripts such as Agent installation, uninstallation, etc.
docs VitePress documentation site, design baseline, development constraints, deployment, and configuration documents

Server Layering

Directory Responsibility
controller/ Parameter parsing, calling services, returning responses
service/ Business logic, verification, transaction orchestration, configuration rendering
model/ Model definition, database version, and migration
router/ Route registration
middleware/ Auth, authorization, rate limiting, and other cross-cutting logic
common/ Configuration, global state, and initialization entry points
utils/ Pure utility functions and general helpers

Agent Modules

Module Responsibility
config Configuration reading and default values
heartbeat Heartbeat and version summary judgment
sync Configuration pulling and application orchestration
nginx / openresty OpenResty file writing, verification, reload, startup, and rollback
state Local state and observability supplementary reporting buffer
httpclient Server communication
protocol Agent API protocol types
internal/updater Agent self-updating

Frontend Layering

Directory Responsibility
app/ Routes, layouts, page assembly
features/ Organize modules by business domains
components/ Reuse components across features
lib/ Request client, environment variables, utility functions, constants
store/ A small amount of cross-page UI state
types/ Shared type definitions