Skip to content

Crate dependency graph

The intra-workspace dependency graph of alint’s Cargo workspace, grouped by container. Solid edges are runtime dependencies; dashed edges are dev/build-only (test harnesses, tooling). alint-core is the foundation (no runtime dependencies); the tiers below count runtime edges only. The crate elements and edges are gated against cargo metadata, so this can’t drift from the manifests.

(The diagram renders interactively on alint.org. GitHub strips the web component; the same view is a static Mermaid flowchart in DIAGRAMS.md.)

Tier = longest runtime-dependency chain to the foundation (alint-core = 0); dev/build-only edges don’t count.

TierCrateRole
0alint-coreCore types and execution engine for the alint language-agnostic repository linter.
0alint-e2eInternal: end-to-end scenario tests for alint. Not a library.
1alint-dslInternal: YAML DSL loader for alint configuration files. Not a stable public API.
1alint-outputInternal: output formatters for alint reports (human, json, …). Not a stable public API.
1alint-rulesInternal: built-in rule implementations for alint. Not a stable public API.
2alint-benchBenchmark harness and deterministic fixture generator for alint
2alint-lspInternal: Language Server Protocol server for alint. Not a stable public API.
2alint-testkitInternal: end-to-end scenario fixtures + tree-spec utilities for alint’s own tests. Not a stable public API.
3alintLanguage-agnostic linter for repository structure, file existence, filename conventions, and file content rules.
3xtaskCargo-xtask helpers for alint (bench, release, etc.)