Technology Stack
Core Sections
1) Runtime Summary
| Area |
Value |
Evidence |
| Primary language |
Python |
pyproject.toml |
| Runtime + version |
Python >=3.10, supports 3.10-3.14 |
pyproject.toml line 19 |
| Package manager |
uv |
pyproject.toml lines 59-60 (build-system), README.md line 91 |
| Module/build system |
uv_build (uv's build backend) |
pyproject.toml line 60 |
2) Production Frameworks and Dependencies
List only high-impact production dependencies (frameworks, data, transport, auth).
| Dependency |
Version |
Role in system |
Evidence |
| numpy |
>=2.2.6 |
Numerical computations for order matching logic |
pyproject.toml line 22 |
| faker |
>=33.0.0 |
Generating UUIDs for orders and trades |
pyproject.toml line 21 |
| polars |
>=1.42.1 (optional) |
Optional data export to LazyFrame format |
pyproject.toml line 28 |
| pandera[polars] |
>=0.21.0 (optional) |
Schema validation for polars dataframes |
pyproject.toml line 27 |
| Tool |
Purpose |
Evidence |
| pytest |
Test runner with coverage, benchmark, xdist |
pyproject.toml lines 36-39 |
| pytest-cov |
Code coverage measurement |
pyproject.toml line 38 |
| pytest-benchmark[histogram] |
Performance benchmarking |
pyproject.toml line 37 |
| pytest-xdist |
Parallel test execution |
pyproject.toml line 39 |
| prek |
Pre-commit hook management (wrapper) |
pyproject.toml line 42 |
| ruff |
Linter and formatter (Python) |
pyproject.toml lines 66-83 |
| ty |
Type checking |
pyproject.toml line 43, lines 88-89 |
| mkdocs-material |
Documentation site generation |
pyproject.toml line 46 |
| mkdocstrings[python] |
API doc generation from docstrings |
pyproject.toml line 47 |
4) Key Commands
# Install dependencies (all groups and extras)
uv sync --all-groups --all-extras
# Build package
uv build
# Run tests
uv run pytest
# Run tests with coverage
uv run pytest --cov=order_matching
# Run pre-commit checks (lint, format, type-check)
uv run prek run -v --show-diff-on-failure --all-files
# Install pre-commit hooks
uv run prek install
# Run benchmark
./benchmark.sh
# Serve documentation locally
uv run mkdocs serve
# Build documentation
uv run mkdocs build -s -c
# Publish to PyPI (production only)
uv publish
5) Environment and Config
- Config sources: pyproject.toml (project, tool configs), .pre-commit-config.yaml, mkdocs.yaml, .coveragerc
- Required env vars: None identified (library package, no runtime services)
- Deployment/runtime constraints: Pure Python library with optional polars support; Published to PyPI; Requires Python 3.10+
6) Evidence
- pyproject.toml
- .pre-commit-config.yaml
- .github/workflows/workflow.yaml
- README.md
- uv.lock