math-toolkit-jala¶
A small, well-structured Python package of mathematical utilities built as the Week 02 laboratory for the Software Development 4 course at Jala University.
The project demonstrates professional software architecture practices: layered design with pure domain logic, strict static typing, comprehensive testing, deterministic dependency management, and reproducible container images.
Design principles¶
- Layered architecture. The package is organized into four layers
that follow the dependency rule of Clean Architecture:
domain,application,infrastructure, andpresentation. Dependencies always point inward, toward the domain. - Strict typing. Every module ships a
py.typedmarker (PEP 561) and is checked withmypyin strict mode. - Test-driven quality. The test suite covers 100% of lines and
branches in the
math_toolkit_jalapackage. - Reproducibility. Dependencies are resolved deterministically via
uv.lock. The container image is built from a multi-stageDockerfileusing the same lock file.
Next steps¶
- Architecture — the four layers and the dependency rule.
- Quickstart — install the package and run your first command in under a minute.
- API Reference — every public function, with signatures and behaviour.
- Examples — usage patterns for the CLI and the library.