Thank you for your interest in contributing to Loru — an offline sign language recognition toolkit (sign → text, sign → voice).
- Python 3.11+
git- (Optional)
uvfor fast dependency installs —pip install uv
# 1. Clone your fork
git clone https://github.com/<your-username>/Loru.git
cd Loru
# 2. Create a virtual environment
python -m venv .venv
source .venv/bin/activate # Linux / macOS
# .venv\Scripts�ctivate # Windows PowerShell
# 3. Install with dev extras
pip install -e ".[dev]"
# 4. Smoke-test the install
loru version
loru data list
loru demoTip: use
pip install -e ".[dev,gui,api,voice]"to enable all optional features.
pytest -qAll tests live under tests/. The config in pyproject.toml sets testpaths = ["tests"] and pythonpath = ["src"], so no extra flags are needed.
To run a single file or test:
pytest tests/test_<module>.py -v
pytest -k "test_my_function"ruff check src testsAuto-fix safe issues:
ruff check --fix src testsLine length is 100 and the target is Python 3.11 (see pyproject.toml).
Before opening a pull request, make sure:
-
pytest -qpasses with no failures -
ruff check src testsreports no errors - New behaviour is covered by at least one test
- Commit messages are clear and reference the relevant issue (e.g.
Fixes #19) - The PR description explains what changed and why
- Screenshots or command output are included for GUI or pipeline changes
- Dataset additions note the data license
Loru pays contributors in MRG through the MergeOS bounty programme.
Step-by-step:
- Star mergeos-bounties/Loru and mergeos-bounties/mergeos.
- Comment
I claim this bountyon the Loru issue you are working on. - Comment on MergeOS Claim Token #1 with a link to the Loru issue.
- Open a PR to Loru
masterwithFixes #<issue-number>in the body. - After the PR is reviewed and merged, the maintainer credits
github:<your-username>on the MergeOS ledger.
See docs/BOUNTY.md for the full payout scale and policy.
Happy hacking! If you get stuck, open an issue or ping the maintainers.