CONTRIBUTING
Thank you for contributing to DEX!
Getting Started¶
- Read DEVELOPMENT.md for setup instructions
- Fork the repository
- Create a feature branch from
dev - Make your changes
- Submit a pull request
Commit Messages¶
Use semantic commit format:
- feat(#123): add resume parser
- fix(#124): handle edge case in matching
- docs: update API docs
- test: add parsing tests
- chore: update dependencies
Code Style¶
- Follow PEP 8
- Use type hints
- Max line length: 100 characters (Ruff)
- Add docstrings to public functions
Before Submitting PR¶
-
Run all checks locally:
-
Tests must pass with 80%+ coverage for new code
-
Update documentation if needed
-
Use PR template in
.github/PULL_REQUEST_TEMPLATE.md
Pull Request Process¶
- Reference issue:
Closes #123 - Describe what changed and why
- Confirm all checklist items
- Wait for CI/CD to pass
- Get at least 1 approval before merging
Testing Requirements¶
- Add unit tests for new code
- Test error scenarios
- Target 80%+ coverage:
uv run poe test-cov
Documentation¶
- Update README for user-facing changes
- Add docstrings for functions
- Create ADR for architectural decisions
- Link related documentation
Attribution and Naming¶
- This project is open source under MIT; keep license and attribution notices in redistributions.
- Forks are welcome, but should use a distinct public name when redistributed as a separate project.
- Do not present a fork as the official DataEngineX/DEX project.
- See Trademark Policy for brand-usage details.
Code Reviews¶
- Be respectful and constructive
- Address feedback promptly
- Keep commits organized
- Don't force push after review starts
Useful Commands¶
uv run poe lint # Linting
uv run poe typecheck # Type checking
uv run poe test # Run tests
uv run poe test-cov # Coverage report
uv run poe check-all # Run all checks
Issue Labels¶
bug- Something isn't workingenhancement- New feature or improvementgood first issue- Good for newcomersP1-high/P2-medium- Priority levelscareerdex- Related to CareerDEXdex-module- Core DEX infrastructure
Questions?¶
- Check DEVELOPMENT.md
- Review Architecture docs
- Create a GitHub issue
- Join #dex-dev Slack channel
Thank you for contributing! 🚀