Contributing
The main repository is public. The local adoption pilot is on main through PR #27. Its TypeScript SDK and CLI are in the npm packages at 0.7.2; the Python API and acceptance tooling are source-only and not on PyPI. @clearproof/circuits publishes sources only. A published package is not production approval: proving keys remain development-only, and nothing is independently audited.
Set up
git clone https://github.com/repfigit/clearproof.git
cd clearproof
npm exec --yes --package=npm@11.9.0 -- npm ci
uv sync --frozen --extra dev --python 3.12Read the applicable AGENTS.md instructions before editing. Python uses the deliberate src. import prefix. Keep Circom, Python witness builders, TypeScript mappings, contracts and test vectors synchronized for proof-interface changes.
Checks
make test
npm run test:ts
npm run buildRun targeted behavior tests and the appropriate integration/contract/circuit checks for the change. Python style is Ruff, line length 120, Python 3.11+ (the locked setup uses 3.12). TypeScript is strict.
Use conventional commit messages and describe the resulting behavior, validation and remaining limitations. Never commit secrets, raw personal data, or development proving keys as production artifacts.
Current priorities are documented in the repository’s adoption pilot plan and summarized on project status. Report bugs and ideas through report an issue, and vulnerabilities privately using the security policy.