Standards and Conventions
This section contains documentation of the tools, approaches, and activities carried out to establish conventions across teams that want to adopt the DX tooling.
Why Follow Conventions?
Consistent conventions across teams enable:
- Faster onboarding - New team members can quickly understand any project
- Better collaboration - Teams can easily work together on shared code
- Automated tooling - DX tools can provide better support when conventions are followed
- Reduced cognitive load - Less time spent on decisions, more time building
Essential Conventions
🔄 Git and Version Control
- Git Configuration - Set up Git for optimal DX integration
- Branch Naming - Consistent branch naming patterns
- Commit Messages - Clear, structured commit history
📥 Pull Requests
- PR Format - Templates and structure for clear PRs
- Acceptance Criteria - Define clear requirements
- Code Review - Effective review practices
- Auto-merge - Safe automated merging
- Changesets - Semantic versioning and changelogs
☁️ Azure Resources
- Naming Convention - Consistent Azure resource naming
- Tagging Strategy - Resource organization and cost management
📁 Project Structure
- Infrastructure Folder Structure - Organize Terraform and IaC code
- NPM Scripts - Standardized package.json scripts
Quick Reference
Git Workflow
- Create feature branch:
feats/description
orfixes/description
- Write conventional commits
- Open PR with proper format
- Address code review feedback
- Merge with auto-merge when ready
Azure Naming
<resource-type>-<workload>-<environment>-<region>-<instance>
Example: rg-myapp-prod-eus-01
Folder Structure
/infra
/environments
/prod
/staging
/modules
/shared
Enforcement and Automation
Automated Checks
Many conventions are enforced automatically through:
- Pre-commit hooks - Validate commit messages and code formatting
- GitHub Actions - Check naming conventions and PR formats
- Branch protection - Require reviews and status checks
Tools Integration
DX tools work best when conventions are followed:
- Terraform modules expect standard folder structures
- Deployment pipelines use branch naming for environment detection
- Monitoring tools rely on consistent tagging
Team Adoption
Getting Started
- Review conventions relevant to your project type
- Configure tools like pre-commit hooks and branch protection
- Train team members on new conventions
- Iterate and improve based on team feedback
Gradual Adoption
You can adopt conventions incrementally:
- Start with Git conventions for immediate benefits
- Add PR formatting and review practices
- Implement infrastructure conventions for new projects
- Migrate existing projects over time
Getting Support
- Questions about conventions? Open an issue on the DX repository
- Suggest improvements We welcome feedback on existing conventions
- Request new conventions for scenarios not yet covered
Convention Benefits
Teams that follow DX conventions report faster onboarding and fewer infrastructure issues. The upfront investment in consistency pays dividends in reduced maintenance and improved collaboration.