auralynq-rag / CONTRIBUTING.md
MHamdan's picture
Deploy Auralynq RAG (Llama-3.3-70B via HF Inference Providers)
8c1b9fe verified
|
Raw
History Blame Contribute Delete
1.44 kB
# Contributing to Auralynq
Thanks for your interest. Auralynq is local-first and runs at $0 by default.
## Dev setup
```bash
make setup # creates .venv via uv, installs dev + light deps
cp .env.example .env # optional; only HUGGINGFACE_TOKEN matters for gated models
make test # offline unit + integration (fallbacks)
make lint typecheck # ruff + mypy
```
## Ground rules
- **Lightweight core.** New runtime deps go in an optional extra in `pyproject.toml` unless they are tiny and pure-Python. Import heavy/optional deps lazily inside functions.
- **Always ship a fallback.** Any provider must degrade to a deterministic offline path so tests and the demo run without models or keys (see ADR-0003).
- **Typed + tested.** Public APIs are typed; `mypy` must stay clean. Core retrieval/agent/eval code keeps ≥80% coverage.
- **Deterministic.** Seed randomness via `auralynq.config`. No wall-clock-dependent behavior in tests.
- **Naming.** Product = Auralynq; package/CLI/services = `auralynq`. Run `make name-audit` before opening a PR.
- **Honest docs.** Never hand-write benchmark numbers; they come from `make eval`/`make bench` into `reports/`.
## Commit style
Small, verifiable units. Reference the phase or module. Run `make lint typecheck test` before pushing. Pre-commit hooks enforce ruff + basic hygiene.
## Layout
See `README.md` → Architecture and `DECISIONS.md` for the why behind each module.