Repository Name
Why
Clear and consistent repository names allow developers to:
- Quickly find existing projects as references
- Understand project context from its name
- Align naming across departments (e.g., CRM, QA, DevOps)
Naming Convention
Use this format:
<client_code>_<project_code>_<domain>_<platform>[_<module>]
Components:
client_code: Short code that identifies the client or organization. Must align with CRM or internal codes.project_code: Unique name for the project. Should be consistent across divisions.domain: Logical domain such asweb,admin, ormobile.platform: Indicates platform or stack, such as:backendfrontendmobile(for hybrid apps like Flutter)androidios
module: Optional. Used for microservice architecture or modular monoliths.
Rules
- Use all lowercase
- Use underscores
_as separators - Avoid using dashes
-, camelCase, or PascalCase - Keep the name descriptive yet concise
Examples
| Use Case | Repository Name |
|---|---|
| Web backend | jhd_web_backend |
| Web frontend | jhd_web_frontend |
| Admin panel backend | jhd_admin_backend |
| Admin panel frontend | jhd_admin_frontend |
| Mobile app (Flutter) | jhd_mobile |
| Native Android | jhd_mobile_android |
| Native iOS | jhd_mobile_ios |
| Microservice - Auth | jhd_web_auth_backend |
| Microservice - Product | jhd_web_product_backend |
Anti-Patterns (Do NOT use)
- AIT-JIRA
- JIRA_AIT
- AitJiraWeb
- crmWebsite
These violate casing, structure, or naming consistency.
Notes
For multi-repo setups:
- Keep naming consistent across related services
- Align naming with deployment targets and monitoring dashboards