π§ Technology Stack
Our backend services are built using a robust and scalable technology stack:
- Framework: Frappe Framework
- Language: Python (version 3.10 or higher)
- Database: MariaDB
- Cache: Redis (used for session storage and caching)
- Queue System: Background workers using Redis Queue (RQ)
π Development Tools
We use modern tools to ensure efficiency, collaboration, and maintainability.
πΉ Version Control
- Git & GitHub: All development work is managed through GitHub repositories.
- Branching Strategy: Follow the Git flow approach:
main- Production-ready codedevelop- Ongoing development- Feature branches for new features
- Hotfix branches for critical bug fixes
πΉ Project Management
- ZenHub: Integrated with GitHub for issue tracking, sprint planning, and project workflows.
- Kanban Boards: Used for tracking issues, features, and bugs.
πΉ Continuous Integration & Deployment (CI/CD)
- GitHub Actions is used for automated workflows:
- β Automated testing on pull requests before merging
- π Automated deployments to staging and production environments
- π Build status checks to ensure code stability
πΉ Code Quality & Review Process
- Code Reviews: All pull requests must go through peer reviews before merging.
- Required Checks Before Merging:
- β Linting (ensures consistent code formatting)
- β Unit & Integration Tests (to catch potential bugs)
- β Security & Dependency Scans
π Next Steps
After setting up your development environment, check out the Development Guidelines for best practices and coding conventions. If you have any questions, donβt hesitate to reach out to a senior developer or check our Developer Hub for additional resources.
Welcome aboard! π