← Return to Guidelines ← Return to Home

DevOps Best Practice Document: Repository Naming Conventions

Introduction

This document outlines the recommended best practices for naming repositories within our IT software development environment. Adhering to these conventions is crucial for maintaining a well-organized codebase, fostering collaboration, enhancing code discoverability, and streamlining our DevOps workflows. Consistent naming improves clarity, reduces ambiguity, and makes it easier for all team members to understand and navigate our projects.

Core Principles of Repository Naming

Recommended Naming Elements and Formats

General Formatting Rules

Recommended Naming Structure

The general structure for repository names will follow a [PREFIX]-[COMPONENT]-[TYPE] pattern, though variations are acceptable based on the specific context.

Example Repository Names

Category Example Name(s) Description
Backend/APIecommerce-product-apiBackend API for product management within the e-commerce project.
crm-customer-serviceMicroservice managing customer data for the CRM system.
Frontend/UIecommerce-admin-uiFrontend application for the e-commerce administration panel.
crm-customer-portal-webWeb-based customer portal for the CRM system.
Mobilemobile-app-iosiOS specific mobile application.
mobile-app-androidAndroid specific mobile application.
Shared/Librariesshared-java-common-libCommon Java utility library used across multiple projects.
devops-shared-pipeline-templatesReusable CI/CD pipeline templates for DevOps.
Infrastructureinfra-aws-eks-clusterTerraform/CloudFormation code for AWS EKS cluster infrastructure.
infra-vpc-network-configRepository holding VPC and network configuration.
Documentationapi-gateway-docsDocumentation specific to the API Gateway service.
platform-developer-guideGeneral developer guide for the entire platform.
Tools/Scriptsdevops-monitoring-scriptsScripts for monitoring infrastructure and applications.
data-etl-customer-syncData pipeline for synchronizing customer data.
Project-Specificprojectx-main-appA monolithic or full-stack application for "Project X".
projectx-auth-serviceAuthentication service for "Project X".

What to Avoid

Enforcement and Documentation

  1. Training and Communication: All team members, especially new hires, will be educated on these naming conventions. Regular reminders will be issued as needed.
  2. Code Review/Pull Request Checks: During code reviews or pull request processes, reviewers should ensure that any new repositories adhere to these guidelines.
  3. Documentation: This document will be accessible to all developers and regularly reviewed and updated as our practices evolve. It should be linked in relevant onboarding materials and team wikis.
  4. Automated Checks (Future Consideration): Where feasible, consider implementing automated checks in CI/CD pipelines or repository creation tools to enforce naming conventions programmatically.

By consistently applying these best practices, we will foster a more organized, efficient, and collaborative development environment, ultimately contributing to higher quality software delivery.