Development Workflow
This project follows GitHub Flow, a lightweight, branch-based workflow.
GitHub Flow
- Main Branch
- The
main
branch is always deployable - All feature development and fixes branch from
main
-
Merges to
main
trigger deployments -
Feature Branches
- Create a branch for each feature/fix
-
Use descriptive names with prefixes:
feature/
for new featuresfix/
for bug fixesdocs/
for documentationrefactor/
for code refactoring
-
Development Process
-
Pull Requests
- Create a PR when your feature is ready
- Fill in the PR template
- Request reviews from team members
-
Address review comments
-
CI/CD Pipeline
- Automated checks run on every PR:
- Code linting
- Tests
- Documentation build
-
Successful checks required for merge
-
Deployment
- Merges to
main
trigger:- Docker image build and push
- Documentation deployment
- Package publication
Best Practices
- Commits
- Use conventional commit messages
- Keep commits focused and atomic
-
Write clear commit descriptions
-
Code Quality
- Run linters locally before pushing
- Add tests for new features
-
Update documentation
-
Reviews
- Review PRs promptly
- Provide constructive feedback
-
Test changes locally if needed
-
Documentation
- Update docs with code changes
- Keep README current
- Add inline code comments