Thanks for your interest in contributing!
git clone https://github.com/KRLabsOrg/verbatim-rag.git
cd verbatim-rag
pip install -e packages/core/
pip install -e ".[dev]"packages/core/verbatim_core/ # Lean extraction package (verbatim-core on PyPI)
verbatim_rag/ # Full RAG pipeline (verbatim-rag on PyPI)
api/ # FastAPI server
frontend/ # React UI
tests/ # Tests (run against verbatim-core only)
docs/ # MkDocs documentation
pytest tests/ -vTests only depend on verbatim-core (openai + pydantic). All LLM calls are mocked.
ruff check packages/core/verbatim_core/ verbatim_rag/ api/ tests/
ruff format packages/core/verbatim_core/ verbatim_rag/ api/ tests/- Fork the repo and create a branch from
main - Make your changes
- Run tests and linting
- Open a pull request against
main
CI runs lint, tests (Python 3.10-3.12), and pip-audit on all PRs.
Both packages share the same version number. To release:
- Bump version in
packages/core/pyproject.tomlandpyproject.toml - Update
CHANGELOG.md - Commit, tag, and push:
git tag v0.x.y && git push --tags - Create a GitHub release from the tag
- Publish to PyPI (extractor first, then rag):
cd packages/core && python -m build && twine upload dist/* cd ../.. && python -m build && twine upload dist/*
By contributing, you agree that your contributions will be licensed under the MIT License.