Contributing
How to contribute to Rdakt AI
Development Setup
git clone https://github.com/RdaktAI/rdakt-ai.git
cd rdakt-ai
make initThis installs all dependencies including dev and test extras.
Running Tests
# Full test suite
make test
# With coverage
make test/cov
# Single test file
uv run pytest tests/test_middleware.py -v
# Single test
uv run pytest tests/test_middleware.py::TestClass::test_name -vCode Quality
# Full audit (pre-commit + mypy)
make audit
# Pre-commit hooks only
make pre_commit
# Mypy only
make mypyCode Style
- Python 3.13+ (modern syntax:
X | Yunion types,matchstatements) - Ruff for linting and formatting (line length 120)
- Mypy for strict type checking
- Source in
src/rdakt_ai/, tests intests/
Commit Format
[RDK-<task_id>] <type>: <description>Types: feat, fix, docs, test, refactor, chore
Pull Requests
- Fork the repository
- Create a feature branch
- Write tests first (TDD)
- Implement the feature
- Run
make test && make audit - Submit a PR
Project Structure
src/rdakt_ai/ # Library source
tests/ # Test suite
playground/ # Interactive demo app
examples/ # Example configurations
docs/ # Specifications and plans