Architecture¶
PinViz architecture overview.
Design Patterns¶
- Separation of concerns: Model → Layout → Rendering pipeline
- Factory pattern: Boards and devices use factory functions
- Schema-first validation: Pydantic schemas validate config before runtime objects are built
Core Modules¶
model.py- Core data structuresboards.py- Board templatesdevices/- Device registry, loader, and template catalogconfig_loader.py- Configuration parsinglayout/- Layout engine and routing componentsrender_svg.py- SVG renderingcli/- Command-line interface commands and output utilities
See CLAUDE.md for detailed architectural documentation.