Files
atomic-design-poc/docs/reference/architecture/dependency-graph.md
T
ehoandClaude Opus 4.8 7d2a36ff22
CI / frontend (push) Successful in 2m11s
CI / storybook-a11y (push) Successful in 5m46s
CI / backend (push) Successful in 1m29s
CI / e2e (push) Successful in 2m55s
CI / semgrep (push) Successful in 1m1s
CI / api-client-drift (push) Successful in 2m5s
feat(arch): WP-38 — dependency graph + declarative boundaries (dependency-cruiser)
Adopt dependency-cruiser as the single declarative source for bounded-context +
atomic-layer boundaries, replacing the per-context no-restricted-imports blocks that
had to be hand-copied (and had left herregistratie uncovered). `.dependency-cruiser.js`
encodes context direction (everyone→shared, herregistratie→registratie, showcase→*),
domain-purity, contracts-import-nothing, ui↛infrastructure, ApiClient confinement, and
no-circular. `npm run dep:check` enforces (wired into ci-local.sh + the frontend CI job);
`npm run dep:graph` emits a committed mermaid context×layer graph. ESLint slimmed to
no-explicit-any + template a11y. Docs + new-context skill updated to the single source.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-23 13:51:04 +02:00

1.9 KiB
Raw Blame History

Dependency graph

Generated by npm run dep:graph — do not edit by hand. Nodes are context × atomic layer (src/app/<context>/<layer>); edges are real imports. The allowed edges are enforced by npm run dep:check (dependency-cruiser); see dependencies.md.

flowchart LR

subgraph 0["src"]
subgraph 1["app"]
2["app.config.ts"]
3["app.routes.ts"]
4["app.ts"]
subgraph 5["auth"]
6["application"]
7["auth.guard.spec.ts"]
8["auth.guard.ts"]
9["domain"]
A["infrastructure"]
B["ui"]
end
subgraph C["beheer"]
D["application"]
E["contracts"]
F["domain"]
G["infrastructure"]
H["ui"]
end
subgraph I["brief"]
J["application"]
K["domain"]
L["infrastructure"]
M["ui"]
end
subgraph N["herregistratie"]
O["application"]
P["domain"]
Q["infrastructure"]
R["ui"]
end
subgraph S["registratie"]
T["application"]
U["contracts"]
V["domain"]
W["infrastructure"]
X["ui"]
end
subgraph Y["shared"]
Z["application"]
10["domain"]
11["infrastructure"]
12["kernel"]
13["layout"]
14["ui"]
15["upload"]
end
subgraph 16["showcase"]
17["concepts.page.ts"]
end
end
end
2-->3
2-->6
2-->Z
2-->11
2-->13
3-->17
3-->8
3-->B
3-->H
3-->M
3-->R
3-->X
3-->Z
3-->13
6-->9
6-->A
6-->12
7-->6
7-->8
7-->Z
8-->6
8-->Z
8-->10
A-->9
A-->12
B-->6
B-->13
B-->14
D-->F
D-->G
D-->Z
D-->12
F-->12
G-->F
G-->Z
G-->11
G-->12
H-->D
H-->Z
H-->13
H-->14
H-->F
J-->K
J-->L
J-->Z
J-->12
J-->15
K-->12
K-->15
L-->K
L-->Z
L-->11
L-->12
M-->J
M-->13
M-->14
M-->K
M-->12
M-->Z
M-->15
O-->P
O-->Q
P-->V
P-->12
P-->15
Q-->P
Q-->11
Q-->12
R-->P
R-->T
R-->Z
R-->12
R-->13
R-->14
R-->15
R-->O
R-->V
R-->11
T-->U
T-->V
T-->W
T-->Z
T-->11
T-->12
V-->12
V-->15
W-->V
W-->11
W-->12
W-->U
X-->V
X-->14
X-->T
X-->13
X-->Z
X-->12
X-->U
X-->15
X-->11
Z-->12
Z-->11
Z-->10
11-->10
11-->12
13-->14
13-->10
13-->Z
14-->15
14-->Z
14-->12
14-->6
14-->9
14-->T
14-->10
14-->11
14-->V
15-->12
15-->Z
15-->11
17-->R
17-->V
17-->X
17-->13
17-->14