Thank you for your interest in contributing! Please follow these rules to ensure smooth code review and merge process.
- Branch from
main: Always create feature/bugfix branches frommain - Naming convention:
type/ticket-descriptionfeature/add-timesheet-exportfix/timer-pause-issuerefactor/phase1-models
- Code passes
clickable desktop&&clickable build && clickable reviewbuild without errors - No hardcoded credentials, URLs, or API keys
- No
console.log/ debug statements in production code - Follow existing code style and conventions
- Test changes on desktop first (
clickable desktop) - Test on device if possible (
clickable install) - For CLI changes, verify with
python3 -m py_compile <file>
- Update relevant docs if adding new functionality
- Add inline comments only where code is non-obvious
- Update naming contracts in
docs/refactor/if applicable
Every PR must include:
Note: When you open a new PR on GitHub, the PR template will auto-populate with the required sections.
## Summary
Brief description of what this PR does.
## Type
- [ ] Feature
- [ ] Bug Fix
- [ ] Refactor
- [ ] Documentation
## Testing
How was this tested?
## Screenshots (if UI change)
- Commit message format:
type: short descriptionfeat: add quadrant timer widgetfix: resolve sync timeout issuedocs: update README
- One logical change per commit: Squash if needed
- No merge commits in PR: Rebase instead
- Atomic commits preferred: Each commit should be self-contained
- Respond to comments within 48 hours
- Address all feedback or explain reasoning
- Mark threads as resolved after addressing
- Be constructive and specific
- Approve only when ready to merge
- Use
Request Changesfor blocking issues
PRs require:
- At least 1 approval (for non-trivial changes)
- All checks passing
- No unresolved conversations
- Up-to-date with
main(rebase if needed)
- Squash merge for features/bug fixes (clean history)
- Merge commit for large refactors (preserves context)
- Work-in-progress PRs without description
- PRs with failing builds
- Code with debug logs or TODO comments left in
- Large refactors without prior discussion
- Files with secrets or credentials
- Issues: Open at https://github.com/CITOpenRep/timemanagement/issues
- Discussion: Use GitHub Discussions for design questions
- Quick questions: Tag maintainers in PR comments
# Create branch
git checkout main && git pull
git checkout -b feature/my-feature
# Keep updated
git fetch origin
git rebase origin/main
# Squash commits before PR
git rebase -i HEAD~3