Thank you for your interest in contributing to CRIPT! We welcome contributions from the community.
Please be respectful and professional in all interactions.
-
Install UV (modern Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh -
Fork and clone the repository
git clone https://github.com/alvarofdezr/cript.git cd cript -
Install dependencies with UV
uv sync --group dev
-
Create a feature branch
git checkout -b feature/your-feature-name
We follow PEP 8 using modern tools:
# Format code with Black
uv run black src/cript tests
# Check with flake8
uv run flake8 src/cript tests
# Sort imports with isort
uv run isort src/cript tests
# Type checking with mypy
uv run mypy src/criptAll new features must include tests:
# Run all tests
uv run pytest tests/ -v
# Run with coverage
uv run pytest tests/ --cov=src/cript --cov-report=html
# Run specific test file
uv run pytest tests/test_protocol.py -vFollow conventional commits:
feat:New featurefix:Bug fixdocs:Documentationtest:Testsrefactor:Code refactoringchore:Dependencies, build, etc.
Example:
feat: implement AES-GCM symmetric encryption
- Update documentation if needed
- Add tests for new functionality
- Run full test suite locally before pushing
- Describe changes clearly in PR description
- Link related issues with
Fixes #123
Do NOT open a public issue for security vulnerabilities. See SECURITY.md for reporting procedures.
- AES-GCM symmetric encryption implementation
- Extended Key Exchange Protocol (EKEP)
- Comprehensive security audit
- Production deployment guide
- Multi-recipient group messaging
- Key directory service
- Kubernetes deployment
- Web dashboard
- API reference
- Protocol specification
- Deployment guides
- Security analysis
- Issues: Check existing GitHub issues
- Discussions: Use GitHub Discussions
- Email: your.email@example.com
Thank you for contributing to CRIPT! 🔐