mirror of
https://github.com/runbear-io/beardrive.git
synced 2026-08-25 08:08:08 +02:00
32 lines
1.8 KiB
Markdown
32 lines
1.8 KiB
Markdown
# Architecture diagrams
|
|
|
|
Mermaid diagrams of the current implementation, kept next to the code so PRs
|
|
can update them alongside the change.
|
|
|
|
**Convention:** when a PR changes the structure drawn here (new/removed types,
|
|
new seams, changed relationships), update the affected diagram in the same PR
|
|
and add an "Architecture changes" section to the PR description that, per
|
|
changed diagram:
|
|
|
|
1. names exactly which types/relationships changed and how (one sentence);
|
|
2. shows a **Before** and an **After** mermaid block — each an *excerpt* of
|
|
only the affected classes and their immediate relationships, never the
|
|
full diagram (Before comes from the diagram at the merge base).
|
|
|
|
The committed diagram file stays the full current state; the before/after
|
|
excerpts exist only in the PR description so reviewers see the structural
|
|
delta at a glance. A pre-PR hook (`.claude/hooks/check-arch-diagrams.sh`)
|
|
reminds Claude Code sessions when server code changed but no diagram did.
|
|
|
|
Together these cover every application package in the repo — every code
|
|
change lands inside exactly one detail diagram's scope (plus the overview
|
|
when the package map or cross-piece wiring changes):
|
|
|
|
- [overview.md](overview.md) — system diagram: every package and surface on one page, and how they connect
|
|
- [cli-sync.md](cli-sync.md) — class diagram of the CLI and sync engine (`cmd/bdrive` + `internal/{syncer,store,journal,config,daemon,agenthooks,autostart}`)
|
|
- [webapp-server.md](webapp-server.md) — class diagram of the `bdrive serve` server (`internal/webapp` + its `internal/remote` seam)
|
|
- [webapp-frontend.md](webapp-frontend.md) — module diagram of the hub's React SPA (`internal/webapp/frontend/src`)
|
|
|
|
Not covered on purpose: `web/docs` (content site, no application code) and
|
|
`cloud/` (private nested repo — its architecture lives there).
|