Этот репозиторий является каркасом для будущих проектов. Архитектура здесь описывает не конечный продукт, а способ организации нового решения вокруг нескольких изолированных зон
| Зона | Назначение |
|---|---|
app/ |
Прикладные приложения будущего проекта |
packages/ |
Общие пакеты, библиотеки и переиспользуемые модули |
docs/ |
Архитектурные и процессные документы |
infrastructure/ |
Контейнеризация, CI/CD и служебные сценарии |
Сюда помещаются исполняемые части будущего продукта: frontend, backend, mobile или административные приложения. Точные подкаталоги зависят от форка и выбранного стека
Здесь хранятся общие модули, которые не должны зависеть от конкретного приложения: конфиг, UI-kit, общие типы, утилиты и доменные библиотеки
Папка для описания структуры, правил, контрактов и решений, которые нужны новой команде на старте проекта
Зона для Docker, CI/CD, web server конфигураций, скриптов развёртывания и вспомогательной автоматизации
- Команда форкает репозиторий.
- Выбирается набор нужных зон в
app/иpackages/. - Документация в
docs/уточняется под конкретный продукт. - Инфраструктура в
infrastructure/настраивается под среду доставки. - Репозиторий превращается в полноценный проект без изменения базовой формы
- Появляется новая область ответственности
- Для неё создаётся отдельная папка или поддерево
- К ней добавляется собственный документ с правилами и границами
- Новая область не смешивается с уже существующими
| Вопрос | Ответ |
|---|---|
| Можно ли добавлять новые приложения? | Да, если они помещаются в app/ и имеют понятную ответственность |
| Можно ли добавлять новые общие пакеты? | Да, если они пригодны для повторного использования |
| Можно ли менять базовую структуру? | Только если проекту действительно нужна другая форма |
| Нужно ли документировать новые зоны? | Да, каждая новая зона должна иметь свой документ |
| Требование | Подход |
|---|---|
| Понятность | Каждая папка имеет одно назначение |
| Масштабируемость | Структура допускает рост без переписывания основания |
| Поддерживаемость | Документация отделена от реализации |
| Повторяемость | Новый проект собирается из того же каркаса |