Contributing Guidelines
Thank you for contributing to STAC GIS! To maintain code quality, security, and velocity, please follow these guidelines when submitting updates.
๐ฟ Git Flow and Pull Requestsโ
- Fork and Branch: Create a feature branch off of
main:git checkout -b feature/your-feature-name - Commit Messages: Follow semantic commit conventions:
feat: add STAC catalogue parsingfix: resolve JWT token expiration refreshdocs: update deployment guidelines
- Open a PR: Ensure your pull request has a clear description detailing the problem being solved and a summary of your changes.
๐จ Code Style and Quality Standardsโ
We enforce linting and formatting on both backend and frontend layers:
Backend (Python)โ
We use Ruff for fast linting and formatting. Run these commands prior to committing:
# Check code style rules
ruff check .
# Fix auto-fixable lint issues
ruff check --fix .
# Format code layout
ruff format .
Frontend (TypeScript / React)โ
We use ESLint and Prettier. Run these commands from the frontend workspace:
# Lint workspace apps and packages
pnpm lint
# Format codebase styles
pnpm format
๐งช Testingโ
We require high test coverage on code changes. Ensure tests pass before submitting code.
Running Backend Testsโ
From the backend/stacgis directory:
# Run the entire test suite
pytest
# Run tests and output an HTML coverage report
pytest --cov=app --cov-report=html
Running Frontend Testsโ
From the frontend directory:
# Run tests across all workspace apps
pnpm test