Architecture — Layer Dependency Graph¶
Import dependency graph generated by grimp
from the live ezcompiler source tree.
Auto-generated
This page is regenerated at each documentation build from the actual source code. It reflects the real import graph, not a manually maintained diagram.
To regenerate locally:
Dependency Graph¶
graph TD
interfaces["interfaces/<br/>(CLI + Python API)"]
services["services/<br/>(Business Logic)"]
adapters["adapters/<br/>(Compilers + Uploaders)"]
shared["shared/<br/>(Config + Exceptions)"]
utils["utils/<br/>(Utilities + Validators)"]
assets["assets/<br/>(Templates)"]
interfaces --> services
interfaces --> shared
services --> adapters
services --> assets
services --> shared
services --> utils
adapters --> shared
adapters --> utils
utils --> shared
assets --> utils
style interfaces fill:#4A90D9,color:#fff,stroke:#2C5F8A
style services fill:#5BA85A,color:#fff,stroke:#3A6B39
style adapters fill:#E8922A,color:#fff,stroke:#A3621B
style shared fill:#9B59B6,color:#fff,stroke:#6C3483
style utils fill:#E74C3C,color:#fff,stroke:#A93226
style assets fill:#7F8C8D,color:#fff,stroke:#566573
Layer Import Matrix¶
| Layer | Imports from |
|---|---|
interfaces |
services, shared |
services |
adapters, assets, shared, utils |
adapters |
shared, utils |
shared |
— |
utils |
shared |
assets |
utils |
Layer Responsibilities¶
| Layer | Responsibility |
|---|---|
interfaces |
Public entry points — CLI (cli_interface) and Python API (EzCompiler) |
services |
Business logic and pipeline orchestration (CompilerService, PipelineService, …) |
adapters |
Concrete compiler and uploader implementations (CxFreezeCompiler, DiskUploader, …) |
shared |
Cross-layer data structures and exceptions (CompilerConfig, CompilationResult, …) |
utils |
Pure utility functions and validators (ZipUtils, FileUtils, validators, …) |
assets |
Static templates consumed by TemplateService (config, setup, version files) |