architect/standards/PROJECT_NAMING.md

PROJECT_NAMING — Именование проектов

Версия: 2.0.0
Дата: 2026-03-07


1. Два типа сущностей — два формата

Сущность Формат папки Пример
Проект (есть lifecycle) @{тип}-{имя}/ @biz-lideravto/
Модуль (нет lifecycle) @{имя}.{тип}/ @ozon.api/

Проект — имеет цель, стадию, команду. Lifecycle: IDEA→CLOSED.
Модуль — единица кода. Только README.md. Нет lifecycle.


2. Формат имени (общий)

LOWERCASE + ДЕФИСЫ + ТОЛЬКО ЛАТИНИЦА
Правило Пример
Строчные буквы lideravto, не Lideravto
Дефисы вместо пробелов ideal-shop, не ideal shop
Без подчёркиваний my-project, не my_project
Без кириллицы pirotehnika, не пиротехника
3–20 символов lideravto, biz-retail

Разрешённые символы:

a-z   строчные латинские
0-9   цифры (не в начале)
-     дефис (разделитель слов)
@     только как первый символ папки (префикс проекта/модуля)
.     только в модулях (@ozon.api)

3. Проекты — формат @{тип}-{имя}/

Типы проектов

Тип Что это Пример
org Организация, холдинг @org-pirotehnika/
biz Коммерческое направление @biz-lideravto/
it IT-система @it-lideravto-drupal/
it-site Сайт @it-site-lideravto-ru/
it-app Приложение @it-app-crm/
it-bot Бот @it-bot-telegram/
ops Операции / процессы @ops-logistics/
hr HR / команда @hr-onboarding/
fin Финансы @fin-budget/
mkt Маркетинг @mkt-seo/
rd Исследование @rd-catalog-ai/
phys Физический объект @phys-office/

Составное имя

Если нужна уточняющая часть — добавляется через дефис:

@it-site-lideravto-ru/      тип=it-site, имя=lideravto-ru
@biz-lideravto/             тип=biz, имя=lideravto
@it-site-lideravto-cs-old/  тип=it-site, имя=lideravto-cs-old

4. Модули — формат @{имя}.{тип}/

Модуль = единица кода без lifecycle. Только README.md внутри.

@ozon.api/           OZON API коннектор
@mp1.service/        Сервис маркетплейсов
@telegram.bot/       Telegram бот
@erp.connector/      Коннектор к ERP

Формат: @{имя}.{тип}/
- {имя} — что это (ozon, telegram, mp1)
- {тип} — роль (api, service, bot, connector, parser)


5. Транслитерация

Русские названия → латиница:

Русский Транслит
Пиротехника pirotehnika
Лидер Авто lideravto
х → h техника → tehnika
ж → zh журнал → zhurnal
ч → ch чат → chat
й → j майор → major

6. Структура workspace

projects/org/
├── @org-pirotehnika/            org-проект
   ├── @biz-retail/             biz-подпроект
      ├── @it-site-piro-ru/    it-подпроект
      └── @mkt-seo/            mkt-подпроект
   └── @biz-wholesale/

└── @biz-lideravto/              biz-проект
    └── @it-lideravto-drupal/    it-подпроект
        └── @ozon.api/           модуль (нет @{тип}, нет lifecycle)

7. Идентификаторы в index.yaml

name: "lideravto"             # имя без типа (lowercase)
type: "biz"                   # тип проекта
slug: "biz-lideravto"         # тип + имя (для URL, git)
full_name: "Лидер Авто"       # полное русское название

8. Идентификаторы вне файловой системы

Контекст Формат Пример
Git репозиторий {slug} biz-lideravto
Docker image {org}/{slug}:{version} pirotehnika/it-crm:1.0.0
База данных {slug}_{env} biz_lideravto_prod
URL slug {имя} lideravto

9. Анти-паттерны

 lideravto-new/            без @ (не проект по стандарту)
 @biz_lideravto/           подчёркивание
 @Biz-Lideravto/           заглавные буквы
 @lideravto/               нет типа
 management/               не проект (нет @)
 @ozon-api/                модуль с дефисом (должно быть @ozon.api/)
 @biz-lideravto/
 @it-site-lideravto-ru/
 @it-site-lideravto-cs-old/
 @ozon.api/
 @mp1.service/

Связи


Обновлено: 2026-03-07