Migration to Python¶
What changed¶
ArchMAP moved its canonical implementation from Node.js to Python.
- New package root:
src/archmap - New CLI entrypoint:
archmap.cli.main - New build metadata:
pyproject.toml - New test stack:
pytest+pytest-cov - New lint stack:
ruff
Why this migration was made¶
- Improve maintainability of the analysis engine.
- Make packaging and distribution simpler for CLI users.
- Standardize quality checks with lint + coverage in CI.
- Speed up architecture-focused feature development (
diff, risk scoring, policy checks).
Backward compatibility¶
- CLI alias
code-archis still available. - Existing exported formats (JSON, Mermaid) are preserved.
- Cytoscape export was added explicitly as a first-class exporter.
New capabilities introduced during migration¶
archmap diff <base> <head>for architecture delta analysis between git refs.- Risk ranking engine (
top_risk_files) with signals: - circular dependency
- god module
- layer violation
- dependency explosion
What is still pending¶
- Additional parser depth for Java, Go, and C#.
- Policy configuration file (
archmap.toml) for custom layering rules.