Architecture#
These pages are for changing MatMelt rather than using it. They assume you have read Explanation, which covers why the design is what it is; here the subject is where things are and what holds them together.
Page |
Covers |
|---|---|
Every package and module, and the dependency rule between them |
|
The frozen dataclasses that travel between layers |
|
The two ABCs, their registries, and what implementing them obliges you to |
|
One pass, function by function, and where failure is attributed |
|
The SQLite schema, the workspace on disk, and read-only observers |
|
The locked defaults, and the decisions that reversed earlier ones |
|
Dev setup, the check battery, and how to add a stage or backend |
The generated API reference — every module, class and method, from the docstrings — is API reference.