Skip to main content

Map architecture boundaries and analyze extracted code maps.

Project description

Modwire Architecture

Modwire Architecture is the typed architecture library for the Modwire ecosystem. It analyzes extracted code maps in memory without owning extraction, presentation, hypermedia, filesystem, or command-line orchestration.

from modwire_architecture import ArchitectureConfig, Modwire
from modwire_extraction import QueryableCodeMap


def analyze(code_map: QueryableCodeMap):
    return Modwire().architecture(ArchitectureConfig()).report(code_map)

Install the library with:

python -m pip install 'modwire-architecture>=6,<7'

Core accepts in-memory configuration and an already extracted code map. Install modwire-cli when paths, configuration directories, or generated files are involved.

Install modwire-cli when you need the command line:

pip install modwire-cli
modwire --config-dir .modwire architecture health src python

Package shape

  • modwire_architecture.architecture — architecture maps, boundary policies, shape checks, insights, and typed reports.
  • modwire_architecture.code — validated in-memory code-package values.
  • modwire_architecture.layers — named layer contracts; orchestration remains to be defined.
  • modwire_architecture.modules — named module contracts; orchestration remains to be defined.
  • modwire_architecture.projects — project coordination contracts for modules and layers; orchestration remains to be defined.
  • modwire_architecture.shared.config — immutable, validated configuration contracts.
  • modwire_architecture.shared.report — architecture report contracts and metadata.

Scaffolding and glossary functionality are not part of this package. The current modwire-mcp repository is a work-in-progress local scaffolding devserver, not yet an operational ecosystem package. The MCP package becomes workable after modwire-cli exposes the filesystem, project, and execution capabilities that MCP will coordinate.

The repeatable GitHub coordination model is frozen in the ecosystem playbook and its executable source-of-truth contract. The contract's package registry derives repository membership and the shared Project component taxonomy; CI validates it with strict Pydantic models. The Python workflow contract provides the standard reusable CI and release procedures for member packages.

Ecosystem

The ecosystem provides independently released building blocks:

Architecture depends only on Extraction. Agent composes Architecture, Mermaid, and Siren as separate published packages.

The architecture work here tracks the Standalone Architecture Package milestone. Package-identity guidance is available in Migrating from Modwire to Modwire Architecture. The historical Modwire 4 to 5 migration remains available for existing modwire consumers.

Model contracts

Public value objects derive from one of three Pydantic bases: ModwireModel, ModwireConfigModel, or ModwireReportModel. They are frozen, reject unknown fields, validate defaults, normalize surrounding string values through domain validators, and provide dictionary, JSON, and YAML round-trip helpers without filesystem orchestration.

Development

uv sync --all-groups
uv run pytest
uv run ruff check src tests
uv build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

modwire_architecture-6.0.0.tar.gz (96.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

modwire_architecture-6.0.0-py3-none-any.whl (52.0 kB view details)

Uploaded Python 3

File details

Details for the file modwire_architecture-6.0.0.tar.gz.

File metadata

  • Download URL: modwire_architecture-6.0.0.tar.gz
  • Upload date:
  • Size: 96.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for modwire_architecture-6.0.0.tar.gz
Algorithm Hash digest
SHA256 d468ff371c3a0848859ceee185b8ff309628cdc5569092f6418a222e17d77c18
MD5 be24d4df224c0764a4887ffdabb57e42
BLAKE2b-256 147be0ad59df4797f766b0503aaf90b33b1c603c8cf8d1c9a0bdfe4101686b0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for modwire_architecture-6.0.0.tar.gz:

Publisher: release.yml on modwire/modwire-architecture

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file modwire_architecture-6.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for modwire_architecture-6.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 65fca29186262b728be92406ce18a5889fe5d2fb834537863bc5854c4829b10f
MD5 f82d0f7d92a4e2e97b411122e8275370
BLAKE2b-256 def4d98c8822649ec5c119c9332f2c94fd9b84e332303d8feb2b70d882047377

See more details on using hashes here.

Provenance

The following attestation bundles were made for modwire_architecture-6.0.0-py3-none-any.whl:

Publisher: release.yml on modwire/modwire-architecture

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page