Archmeta Application C4 L2 Cli
Elements (5)
CLIc4:container
archmeta.cliThe command surface: archmeta init scaffolds a repository with its metamodel profiles, archmeta load reports the model and its diagnostics, archmeta build generates the site, archmeta daemon serves the Kernel and the Viewer. The only entry point in a CI pipeline.
ArchMetac4:softwaresystem
archmetaA platform for managing architecture documentation as code. Architects describe their organisation in a textual DSL stored in Git; the Kernel reads that repository into an in-memory graph and serves it over REST, the Viewer authors it, and the Publisher turns it into a static site. There is no database — Git is the source of truth, and the same commit always produces the same model.
Kernelc4:container
archmeta.kernelReads the repository into an in-memory graph and serves it over REST on port 7777. Never throws on model content: unresolved references, malformed attributes and rule violations become diagnostics, and the load always completes. A pure function of the repository — no clock, no randomness, no network during a load — so the same commit produces the same model and the same diagnostics forever.
Publisherc4:container
archmeta.publisherGenerates the static site from a loaded model: element pages, view pages with interactive SVG diagrams, the BPMN gallery and the search index. The output has no back end and carries no diagnostic data — what an architect needs to fix the model is not what a stakeholder should read.
archmeta-build (job)archimate:node
deployment.docker-engine.builder-containerA one-shot container that runs archmeta build and exits. This is the CI shape: check the repository out, build the site, publish the artifact, tear everything down. Nothing persists between runs, which is safe precisely because the load is a pure function of the commit.
Relationships (7)Relationships (2)
Loads throughc4:uses
archmeta.cli → archmeta.kernelLoads the model through
Invokes for archmeta buildc4:uses
archmeta.cli → archmeta.publisherReads the loaded model fromc4:uses
archmeta.publisher → archmeta.kernelarchmeta → archmeta.cliArchMeta → CLIarchimate:composition
archmeta → archmeta.cliarchmeta → archmeta.kernelArchMeta → Kernelarchimate:composition
archmeta → archmeta.kernelarchmeta → archmeta.publisherArchMeta → Publisherarchimate:composition
archmeta → archmeta.publisherRuns archmetaarchimate:assignment
deployment.docker-engine.builder-container → archmeta.cliRuns archmeta build via