This document provides a high-level overview of the development workflow used in the SparX Wallet Flutter project. It serves as an entry point to more detailed documentation for specific aspects of the development process.
For detailed information on specific aspects of the development workflow, refer to these documents:
- Git Workflow - Branching strategy, Git operations, and best practices
- Task Workflow - YouTrack integration and development process
- Release Process - Release preparation and deployment procedures
- Conventional Commits - Commit message format and standards
All development work is tracked through YouTrack tickets with defined status transitions: To Do → In Progress → Review → Ready to Test → Testing → Verified → Released
The project uses a modified GitFlow model:
main- Production releasesdev- Integration branch for ongoing developmentfeature/EWM-XXX- Feature development branchesfix/EWM-XXX- Bug fix branchesrelease/EWM-XXX- Release preparation branches
- Start: Take YouTrack ticket, create branch from
dev - Develop: Implement changes with focused commits
- Review: Create PR, pass CI checks, get code review
- Test: QA testing and verification
- Deploy: Merge to
dev, include in releases
- Prepare: Create release branch from
dev - Test: Deploy to Firebase App Distribution for QA testing
- Release: Merge to
main, tag release, deploy to stores - Sync: Merge changes back to
dev
- Semantic PR Check: Validates conventional commit format
- Build and Test: Runs full test suite and quality checks
- Deploy App: Automated deployment to Firebase App Distribution and app stores
- All tests must pass before merging
- Code review approval required
- QA verification before release
- Automated CI/CD pipeline validation
- Set up your environment following the project README
- Take a YouTrack ticket and move it to "In Progress"
- Create a feature branch from
dev - Follow the development workflow outlined in Task Workflow
- Use proper Git practices as described in Git Workflow
For detailed step-by-step instructions, refer to the specific workflow documents linked above.