Версия: 1.0.0
Дата: 2026-02-17
Тип: Core Component
Статус: Active
Code Generator — движок автоматической генерации кода из YAML конфигураций с DELTA наследованием.
Основа для: "запустить платформу на автомат" (автоматизация создания компонентов).
generator/
├── src/
│ ├── preprocessor.py ← YAML + DELTA наследование
│ ├── validator.py ← Валидация конфигов
│ ├── backend_generator.py ← FastAPI → Python
│ ├── frontend_generator.py ← React → TypeScript
│ ├── database_generator.py ← SQL DDL → PostgreSQL
│ ├── api_generator.py ← OpenAPI specs
│ └── utils.py
│
├── templates/
│ ├── backend/ ← Jinja2 шаблоны для Python
│ ├── frontend/ ← Jinja2 шаблоны для React
│ ├── database/ ← SQL DDL шаблоны
│ └── api/ ← OpenAPI шаблоны
│
├── tests/ ← Unit тесты
└── cli.py ← CLI интерфейс
# Полная генерация проекта
python cli.py generate \
--config constructor/l2_industry_crm.yaml \
--output projects/generated/crm/
# Только backend
python cli.py generate \
--config constructor/l2_industry_crm.yaml \
--target backend \
--output projects/generated/crm/backend/
# Только одна entity
python cli.py generate \
--config constructor/l2_industry_crm.yaml \
--entity Contact \
--output projects/generated/crm/
# l0_universal.yaml
entities:
- name: Entity
fields:
- name: id
type: uuid
primary_key: true
- name: created_at
type: timestamp
- name: updated_at
type: timestamp
# l1_platform.yaml
extends: l0_universal.yaml
entities:
+= Contact: # DELTA: добавить новую entity
fields:
- name: email
type: email
unique: true
+= — добавить-= — удалить= — заменитьОбрабатывает:
1. Загрузку базового YAML
2. Рекурсивное разрешение extends
3. Применение DELTA операций
4. Валидацию итогового конфига
Генерирует:
- models/entity.py — SQLAlchemy модели
- routers/entity.py — CRUD endpoints
- schemas/entity.py — Pydantic схемы
Генерирует:
- schema.sql — CREATE TABLE
- migrations/ — Alembic миграции
Генерирует:
- components/EntityGrid.tsx — DataGrid
- components/EntityForm.tsx — Форма
- hooks/useEntity.ts — API hooks
Генерирует:
- openapi.yaml — OpenAPI 3.0 спецификация
Оценка AI: 60 часов = ~2 недели
После реализации Code Generator:
1. Реализация Phase 0 (Core Primitives) через генератор = 4ч вместо 40ч
2. Вся платформа через генератор = 100ч вместо 500ч
Ссылки:
- PLATFORM_COMPONENTS_FULL.md
- CONSTRUCTOR_ARCHITECTURE.md