Development Workflow
Guidelines for branch naming, commit messages, and development process
Development Workflow
Learn about our development workflow, including branch naming conventions, commit message format, and the step-by-step development process.
Branch Naming Convention
Use descriptive branch names that clearly indicate the purpose of your changes:
# Feature branches
feature/add-barcode-scanning
feature/inventory-adjustments
# Bug fix branches
fix/dashboard-loading-issue
fix/authentication-redirect
# Documentation branches
docs/api-reference-update
docs/user-guide-improvements
# Refactoring branches
refactor/product-service-cleanup
refactor/component-optimization
Commit Message Format
Follow the Conventional Commits specification:
# Format
<type>(<scope>): <description>
# Examples
feat(products): add barcode scanning functionality
fix(auth): resolve login redirect loop
docs(readme): update installation instructions
refactor(inventory): optimize stock calculation logic
test(products): add unit tests for product service
perf(api): improve database query performance
style(ui): update button component styling
Commit Types
- feat: A new feature
- fix: A bug fix
- docs: Documentation only changes
- style: Changes that do not affect the meaning of the code
- refactor: A code change that neither fixes a bug nor adds a feature
- perf: A code change that improves performance
- test: Adding missing tests or correcting existing tests
- chore: Changes to the build process or auxiliary tools
Development Process
Follow these steps for contributing changes:
1. Create Feature Branch
git checkout -b feature/your-feature-name
2. Make Changes
- Write code following the established patterns
- Add tests for new functionality
- Update documentation as needed
3. Test Changes
# Run type checking
pnpm type-check
# Run linting
pnpm lint
# Run tests
pnpm test
# Build application
pnpm build
4. Commit Changes
git add .
git commit -m "feat(products): add barcode scanning functionality"
5. Push and Create PR
git push origin feature/your-feature-name
# Create pull request on GitHub
Code Review Process
Self-Review Checklist
Before submitting your pull request:
- Code follows project style guidelines
- All tests pass
- Documentation is updated
- No console errors or warnings
- Performance impact considered
- Security implications reviewed
Reviewer Guidelines
When reviewing code:
- Focus on code quality and maintainability
- Check for potential security issues
- Verify test coverage
- Ensure documentation is adequate
- Be constructive and respectful in feedback
Continuous Integration
Our CI pipeline runs automatically on pull requests:
- Type Checking: Ensures TypeScript compilation
- Linting: Checks code style and quality
- Testing: Runs unit and integration tests
- Build: Verifies successful application build
- Security: Scans for vulnerabilities
All checks must pass before merging.