Thank you for your interest in contributing to BridgeStack! This project is part of the OpenStacks ecosystem, and we welcome contributions of all kinds.
- Python 3.11+
- Git
git clone https://github.com/Varnasr/BridgeStack.git
cd BridgeStack
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txtuvicorn app.main:app --reloadAPI docs will be at http://localhost:8000/docs.
pytest # run all tests
pytest --cov=app # with coverage
pytest -k "test_geography" # run specific test classruff check . # check for lint issues
ruff check --fix . # auto-fix lint issues
ruff format . # format codeOpen an issue using the bug report template. Include:
- Steps to reproduce
- Expected vs actual behaviour
- Python version and OS
Open an issue using the feature request template.
- Fork the repository
- Create a feature branch:
git checkout -b feat/your-feature - Make your changes
- Run tests and linting:
pytest --cov=app ruff check . ruff format --check .
- Commit using the commit conventions
- Push and open a pull request
All commit messages must start with one of these prefixes:
| Prefix | Use for |
|---|---|
Add: |
New features or files |
Fix: |
Bug fixes |
Update: |
Enhancements to existing features |
Docs: |
Documentation changes |
Refactor: |
Code restructuring (no behaviour change) |
Test: |
Adding or updating tests |
CI: |
CI/CD pipeline changes |
Chore: |
Maintenance tasks |
Example: Add: pagination support for indicator values endpoint
- Keep PRs focused — one feature or fix per PR
- Include tests for new functionality
- Update documentation if you change API behaviour
- Fill in the PR template completely
app/
├── core/ # Config, database setup, shared utilities
├── models/ # SQLAlchemy ORM models
├── schemas/ # Pydantic request/response schemas
└── routes/ # FastAPI route handlers
tests/ # Pytest test suite
docs/ # Project documentation
- Additional query endpoints and aggregations
- Pagination and rate limiting
- Response caching
- PostgreSQL adapter
- Test coverage improvements
- Documentation and examples
Please read our Code of Conduct before contributing.
Open a discussion or reach out at hello@impactmojo.in.