Quick Start
good-first-issue labeled tickets: they’re scoped to be completable in a few hours without deep codebase knowledge.
Ways to Contribute
Code
Fix bugs, implement features, optimize performance, or add new ingestors, parsers, and exporters using the plugin registry.
Documentation
Fix typos, improve clarity, add missing examples, write tutorials, or keep the API reference accurate as modules evolve.
Testing
Add test coverage for untested modules or edge cases, reproduce reported bugs with minimal repros, or improve cross-platform reliability.
Community
Answer questions in GitHub Issues and Discussions, review pull requests with constructive feedback, or share Semantica in blog posts and talks.
Development Setup
Reporting Issues
Bug reports should include:- What happened vs. what you expected
- Minimal steps to reproduce
- Your environment: Python version, OS, Semantica version (
python -c "import semantica; print(semantica.__version__)")
- Your concrete use case
- What you’d like Semantica to do
- Why it benefits a broad set of users, not just your specific workflow
Pull Request Checklist
Before submitting a PR, confirm:Tests pass locally:
pytestNew features include documentation with working code examples
Code follows project style: Black, isort, flake8
Commit messages are clear and describe the why, not just the what
No unresolved merge conflicts
Code of Conduct
All contributors are expected to follow the Contributor Covenant Code of Conduct. Be respectful, patient, and constructive: especially toward newcomers. Report violations by opening an issue with the[CoC] prefix.
Help
Community
Community guidelines and values.
Governance
How decisions are made and the project is run.
