Thank you for your interest in contributing!
# Clone repository
git clone https://github.com/yourusername/c4-literate-python.git
cd c4-literate-python
# Create virtual environment
python3.12 -m venv venv
source venv/bin/activate # or `venv\Scripts\activate` on Windows
# Install in development mode
pip install -e ".[dev]"
# Run tests
pytest# Run all tests
pytest
# Run with coverage
pytest --cov=c4_literate --cov-report=html
# Run specific test file
pytest tests/test_parser.py- Follow PEP 8
- Maximum line length: 79 characters
- Use type hints where appropriate
- Write docstrings for public functions
- Add to
c4-annotations-schema.yaml - Update
extractor.pyif needed - Update
model.pyto handle new annotation type - Regenerate documentation:
make docs - Add tests
- Update README examples
Important: Always edit the YAML schema file, not SCHEMA.md directly. SCHEMA.md is auto-generated from the YAML.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for new functionality
- Ensure tests pass (
pytest) - Commit your changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use GitHub Issues
- Include Python version
- Provide example code that demonstrates the issue
- Include error messages and stack traces
Open a GitHub Discussion or issue!