Contributor Guide¶
Thank you for your interest in contributing to fnb! This page collection covers everything you need to contribute effectively: setting up your environment, coding standards, and the day-to-day workflow for issues and merge requests.
If you're looking for maintainer-only operations (releases, PyPI publishing, repository administration), see the Maintainer Guide instead.
Pages¶
- Getting Started — clone, set up your environment, run the tests, build the docs
- Coding Standards — style, type hints, docstrings, and how to write tests
- Workflow — issue-driven development, branching, commits, and merge requests
Quick Reference¶
| Task | Command |
|---|---|
| Set up the environment | uv sync --all-groups |
| Run unit tests (fast) | task test:unit |
| Run all tests | task test |
| Format code | task lint |
| Run pre-commit hooks | task pre-commit |
| Simulate the full CI pipeline | task test:ci |
| Serve docs locally | task docs:serve |
| Create an issue | glab issue create --title "..." --label "..." |
| Create a merge request | glab mr create --title "..." --description "Closes #<id>" |
Getting Help¶
- Issue Tracker: gitlab.com/qumasan/fnb/-/issues
- Merge Requests: gitlab.com/qumasan/fnb/-/merge_requests
- Documentation: qumasan.gitlab.io/fnb
Please use GitLab issues for bug reports, feature requests, and questions. Contributions are recognized in commit history and release notes — thank you for helping make fnb better!