type: concept
title: "Платформа: Полная иерархия компонентов"
status: active
version: 1.0.0
date: 2026-02-17
owner: architect
Синтез исследований 15 систем → Unified Component Model
Базовые сущности:
| Примитив | Описание | Встречается в |
|---|---|---|
| Entity | Основная сущность (запись в таблице) | CRM, PM, E-commerce, CMS, Analytics, HR, Helpdesk, Accounting, Tabular, Marketing, LMS, Asset, ERP, MDM, WMS |
| Field | Поле сущности (столбец в таблице) | Все 15 систем |
| Relation | Связь между сущностями (1:1, 1:N, N:M) | Все 15 систем |
| User | Пользователь системы | Все 15 систем |
| Permission | Права доступа | Все 15 систем |
| Activity | Действие/событие (создание, изменение) | Все 15 систем |
| Timestamp | Временные метки (created_at, updated_at) | Все 15 систем |
Базовые типы данных:
| Тип | Примеры | Используется в |
|---|---|---|
| STRING | Text, Name, Title | Все системы |
| NUMBER | Integer, Decimal, Float | Все системы |
| BOOLEAN | Yes/No, True/False | Все системы |
| DATE | Date, DateTime, Timestamp | Все системы |
| SELECT | Status, Priority, Category | Все системы |
| PERSON | Assignee, Owner, Reporter | Все системы |
Базовые UI паттерны:
| Паттерн | Описание | Встречается в |
|---|---|---|
| List View | Табличное представление | Все системы |
| Detail View | Детальная карточка | Все системы |
| Filter | Фильтрация по полям | Все системы |
| Search | Полнотекстовый поиск | Все системы |
| Pagination | Разбивка на страницы | Все системы |
Сущности:
| Примитив | Описание | Системы (количество) |
|---|---|---|
| Comment | Комментарий к записи | 14/15 (кроме Analytics) |
| Attachment | Прикрепленный файл | 13/15 |
| Tag/Label | Метка для категоризации | 12/15 |
| Status | Статус записи (workflow) | 12/15 |
| Template | Шаблон для создания | 11/15 |
| Notification | Уведомление | 11/15 |
| Workflow | Автоматизация процесса | 10/15 |
Типы данных:
| Тип | Примеры | Системы |
|---|---|---|
| REFERENCE | Link to Entity, Foreign Key | 13/15 |
| MULTI_SELECT | Tags, Categories | 12/15 |
| Email field | 11/15 | |
| PHONE | Phone number | 10/15 |
| URL | Website, Link | 10/15 |
| CURRENCY | Money, Price | 10/15 (E-commerce, Accounting, CRM, ERP, etc.) |
UI паттерны:
| Паттерн | Описание | Системы |
|---|---|---|
| Board View | Kanban по статусу | 13/15 |
| Timeline View | Gantt chart | 11/15 |
| Calendar View | Календарное представление | 11/15 |
| Activity Feed | Лента активности | 13/15 |
| Breadcrumbs | Навигационная цепочка | 10/15 |
Сущности:
| Примитив | Описание | Системы |
|---|---|---|
| Document | Документ/страница | CMS, PM, Tabular, Marketing, LMS (5) |
| Pipeline | Последовательность этапов | CRM, E-commerce, HR, Helpdesk, Marketing (5) |
| Custom Field | Настраиваемое поле | CRM, PM, HR, Helpdesk, Tabular, E-commerce (6) |
| Version | Версия документа | CMS, Tabular, PM (3) + код везде (9) |
| Role | Роль пользователя | Все (15), но детализация в 8 |
| Goal/Objective | Цель | PM, HR, Marketing, Analytics (4) + CRM (5) |
| Checklist | Список задач | PM, HR, E-commerce, LMS (4) |
Типы данных:
| Тип | Примеры | Системы |
|---|---|---|
| RICH_TEXT | HTML, Markdown | CMS, PM, Tabular, E-commerce, Marketing, LMS (6) |
| LOCATION | Address, Coordinates | E-commerce, WMS, Asset, HR, CRM (5) |
| FORMULA | Вычисляемое поле | Tabular, PM, Analytics, Accounting (4) + все (условно 15) |
| LOOKUP | Поиск по связанной таблице | Tabular, CRM, E-commerce, Analytics (4) |
| ROLLUP | Агрегация по связи | Tabular, Analytics, Accounting (3) |
UI паттерны:
| Паттерн | Описание | Системы |
|---|---|---|
| Gallery View | Плитка с изображениями | E-commerce, CMS, Asset, Tabular (4) |
| Form View | Форма ввода | Tabular, Marketing, HR, Helpdesk (4) + все (15) |
| Chart/Graph | Визуализация данных | Analytics, PM, Marketing, HR, Accounting (5) |
| Sidebar Panel | Боковая панель деталей | PM, CRM, E-commerce, Helpdesk (4) + большинство |
Сущности:
| Примитив | Описание | Системы |
|---|---|---|
| Cart | Корзина покупок | E-commerce, ERP (2) |
| Ticket | Тикет поддержки | Helpdesk, HR (2) |
| Course | Учебный курс | LMS, HR (2) |
| Asset | Физический объект | Asset, WMS, Accounting (3) |
| Campaign | Маркетинговая кампания | Marketing, CRM (2) |
| Lead | Потенциальный клиент | CRM, Marketing (2) |
| Inventory | Складской запас | E-commerce, ERP, WMS (3) |
Типы данных:
| Тип | Примеры | Системы |
|---|---|---|
| RATING | Stars, Score | E-commerce, LMS, HR (3) |
| FILE | Document, Media | CMS, Tabular, Asset (3) + везде как attachment |
| PROGRESS | Percentage, Bar | PM, LMS, HR (3) |
| DURATION | Time period | PM, LMS, Asset (3) |
Основа платформы: Tabular/Low-code systems (Airtable, Notion, NocoDB, Baserow)
Обоснование:
Исследование показало: Tabular системы содержат ВСЕ примитивы, необходимые для построения любой другой системы.
Компоненты:
Table Engine
├── Table (основная сущность)
│ ├── Schema (определение полей)
│ ├── Data (строки)
│ ├── Relations (связи с другими таблицами)
│ └── Permissions (права доступа)
│
├── Field Types (20+ типов)
│ ├── Basic (Text, Number, Boolean, Date)
│ ├── Select (Single select, Multi-select)
│ ├── Reference (Link to record, Lookup, Rollup)
│ ├── Computed (Formula, Auto-number)
│ ├── Rich (Rich text, Attachment, URL)
│ └── Special (Person, Phone, Email, Location, Currency)
│
├── View System (множественные представления)
│ ├── Grid (spreadsheet)
│ ├── Kanban (по select field)
│ ├── Calendar (по date field)
│ ├── Gallery (с изображениями)
│ ├── Form (ввод данных)
│ └── Timeline/Gantt (по date range)
│
├── Relation Engine (связи между таблицами)
│ ├── One-to-Many (автоматически двусторонняя)
│ ├── Many-to-Many (через junction table)
│ └── Self-reference (иерархия)
│
├── Computed Fields (вычисления)
│ ├── Formula (JavaScript-like expressions)
│ ├── Lookup (значение из связанной записи)
│ └── Rollup (агрегация: SUM, COUNT, AVG, MIN, MAX)
│
├── Permission System (4 уровня)
│ ├── Workspace-level (кто видит базу)
│ ├── Table-level (кто видит таблицу)
│ ├── Row-level (кто видит запись) — в beta
│ └── Field-level (кто видит поле)
│
├── Auto-generated API (REST + GraphQL)
│ ├── CRUD endpoints (per table)
│ ├── Filter/Sort/Pagination
│ └── Webhooks (on create/update/delete)
│
└── Auto-generated Forms
├── Create form (from schema)
├── Edit form
└── Validation rules
20+ типов полей из Tabular систем:
| Категория | Типы | Описание |
|---|---|---|
| Text | Single line text, Long text (Rich text), URL, Email, Phone | Текстовые данные |
| Number | Number, Currency, Percent, Duration, Rating | Численные данные |
| Select | Single select, Multi-select | Выбор из списка |
| Date | Date, DateTime, Date range | Временные данные |
| Reference | Link to record, Lookup, Rollup | Связи между таблицами |
| Computed | Formula, Auto-number, Count, Sum | Вычисляемые поля |
| Media | Attachment, Image, File | Файлы и медиа |
| Location | Location (coordinates), Address | Геоданные |
| People | Person (Assignee), Created by, Last modified by | Пользователи |
| Logic | Checkbox (Boolean) | Логические значения |
| Special | Barcode, QR code, Button, AI (generative) | Специальные типы |
6 базовых views:
| View | Когда использовать | Примеры систем |
|---|---|---|
| Grid | Работа с данными, bulk edit | Spreadsheet, Tables |
| Board | Управление статусами, workflow | Kanban (Jira, Asana, Monday) |
| Calendar | События, сроки, планирование | Google Calendar, Outlook |
| Gallery | Визуальный контент, карточки | Pinterest, Product catalog |
| Form | Ввод данных, сбор информации | Google Forms, Typeform |
| Timeline | Проектное планирование, Gantt | MS Project, Asana Timeline |
Типы связей:
Relation Types
├── One-to-Many (1:N)
│ └── Пример: Company → Contacts
│ - Одна компания → много контактов
│ - Автоматически создает обратную связь
│
├── Many-to-Many (N:M)
│ └── Пример: Tasks ↔ Tags
│ - Одна задача → много тегов
│ - Один тег → много задач
│ - Через junction table (tasks_tags)
│
└── Self-reference (иерархия)
└── Пример: Category → Parent Category
- Категория ссылается на родительскую
- Создает дерево
Auto-bidirectional: При создании связи A → B автоматически создается B → A
3 типа:
| Тип | Описание | Пример |
|---|---|---|
| Formula | JavaScript-like выражение | {Price} * {Quantity} |
| Lookup | Значение из связанной записи | Из Deal получить Company Name |
| Rollup | Агрегация по связи | SUM всех Order Amount для Customer |
Формулы:
// Математика
{Price} * {Quantity} * (1 - {Discount})
// Условия
IF({Status} = "Paid", "✅", "⏳")
// Даты
DATEADD({Start Date}, {Duration}, 'days')
// Текст
CONCATENATE({First Name}, " ", {Last Name})
// Агрегация (через Rollup)
SUM({Related Orders}[Amount])
COUNT({Related Tasks}[ID])
┌────────────────────────────────────────────────────────────┐
│ SYSTEM (15 типов систем) │
│ CRM, E-commerce, ERP, PM, CMS, Analytics, HR, etc. │
└────────────────────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────────────────────┐
│ ENTITY (основные сущности системы) │
│ Contact, Deal, Product, Order, Task, etc. │
└────────────────────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────────────────────┐
│ MODULE (группа компонентов) │
│ Contact Management, Pipeline, Inventory, Workflow │
└────────────────────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────────────────────┐
│ COMPONENT (UI + Logic) │
│ Contact Card, Kanban Board, Form, Filter │
└────────────────────────────────────────────────────────────┘
│
▼
┌────────────────────────────────────────────────────────────┐
│ PRIMITIVE (базовые блоки) │
│ Field, Relation, View, Permission, Activity │
└────────────────────────────────────────────────────────────┘
SYSTEM: CRM
CRM System
│
├── ENTITY: Contact (человек)
│ │
│ ├── MODULE: Contact Management
│ │ │
│ │ ├── COMPONENT: Contact List
│ │ │ └── PRIMITIVES:
│ │ │ ├── Table (Grid View)
│ │ │ ├── Filter (by Status, Owner)
│ │ │ ├── Search (full-text)
│ │ │ └── Pagination
│ │ │
│ │ ├── COMPONENT: Contact Card
│ │ │ └── PRIMITIVES:
│ │ │ ├── Form (name, email, phone)
│ │ │ ├── Activity Feed (timeline)
│ │ │ ├── Relation (to Company)
│ │ │ └── Attachment (files)
│ │ │
│ │ └── COMPONENT: Contact Import
│ │ └── PRIMITIVES:
│ │ ├── File Upload
│ │ ├── Field Mapping
│ │ └── Validation
│ │
│ └── MODULE: Contact Activity Tracking
│ │
│ ├── COMPONENT: Activity Timeline
│ │ └── PRIMITIVES:
│ │ ├── Activity (create, update, call, email)
│ │ ├── Timestamp
│ │ ├── User (who did it)
│ │ └── Comment
│ │
│ └── COMPONENT: Activity Calendar
│ └── PRIMITIVES:
│ ├── Calendar View
│ ├── Date field
│ └── Filter (by type)
│
├── ENTITY: Deal (сделка)
│ │
│ ├── MODULE: Pipeline Management
│ │ │
│ │ ├── COMPONENT: Kanban Board
│ │ │ └── PRIMITIVES:
│ │ │ ├── Board View
│ │ │ ├── Status (columns)
│ │ │ ├── Drag-drop
│ │ │ └── Deal Card
│ │ │
│ │ ├── COMPONENT: Deal Detail
│ │ │ └── PRIMITIVES:
│ │ │ ├── Form (amount, stage, close_date)
│ │ │ ├── Relation (to Contact, Company)
│ │ │ ├── Activity Feed
│ │ │ └── Custom Fields
│ │ │
│ │ └── COMPONENT: Pipeline Analytics
│ │ └── PRIMITIVES:
│ │ ├── Chart (funnel, trend)
│ │ ├── Rollup (SUM amount by stage)
│ │ └── Filter (by owner, date)
│ │
│ └── MODULE: Sales Automation
│ │
│ ├── COMPONENT: Workflow Builder
│ │ └── PRIMITIVES:
│ │ ├── Trigger (field change, time)
│ │ ├── Condition (IF/THEN)
│ │ ├── Action (send email, create task)
│ │ └── Notification
│ │
│ └── COMPONENT: Email Sequences
│ └── PRIMITIVES:
│ ├── Template
│ ├── Schedule
│ └── Tracking (opens, clicks)
│
├── ENTITY: Company (организация)
│ └── MODULE: Account Management
│ └── ...
│
├── ENTITY: Activity (активность)
│ └── MODULE: Activity Tracking
│ └── ...
│
└── ENTITY: Task (задача)
└── MODULE: Task Management
└── ...
Таблица общих компонентов:
| Компонент | CRM | E-com | ERP | PM | CMS | Analytics | HR | Helpdesk | Accounting | Tabular | Marketing | LMS | Asset | MDM | WMS |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Entity CRUD | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| List View | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Board/Kanban | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | — | ✓ |
| Timeline/Gantt | ✓ | — | ✓ | ✓ | — | ✓ | ✓ | — | — | ✓ | ✓ | ✓ | ✓ | — | — |
| Calendar | ✓ | — | — | ✓ | ✓ | — | ✓ | ✓ | — | ✓ | ✓ | ✓ | — | — | — |
| Filter/Search | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Activity Feed | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Comments | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Attachments | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ |
| Tags/Labels | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Permissions | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Workflow | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | — | ✓ |
| Notifications | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ |
| Reports | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Custom Fields | ✓ | ✓ | ✓ | ✓ | ✓ | — | ✓ | ✓ | — | ✓ | ✓ | — | — | — | — |
| Templates | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | — | — | — |
| API | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Легенда: ✓ = есть компонент, — = нет компонента
TOP-10 universal components:
| # | Компонент | Описание | Встречается в |
|---|---|---|---|
| 1 | Entity CRUD | Create, Read, Update, Delete | 15/15 систем |
| 2 | List/Table View | Табличное представление данных | 15/15 систем |
| 3 | Filter & Search | Фильтрация и поиск | 15/15 систем |
| 4 | Permissions | RBAC, права доступа | 15/15 систем |
| 5 | API | REST/GraphQL endpoints | 15/15 систем |
| 6 | Activity Feed | Лента активности | 14/15 систем (кроме Analytics) |
| 7 | Comments | Комментарии к записям | 14/15 систем |
| 8 | Attachments | Прикрепление файлов | 14/15 систем |
| 9 | Board/Kanban View | Канбан доска | 13/15 систем |
| 10 | Notifications | Уведомления | 14/15 систем |
CRM:
E-commerce:
ERP:
CMS:
Analytics/BI:
PM:
HR:
Accounting:
Tabular:
Marketing:
LMS:
Asset Management:
Правило: Каждая фаза строится на результатах предыдущей. Невозможно перейти к Phase 2, не завершив Phase 1.
Phase 0: Core Primitives (неделя 1)
↓ зависимость
Phase 1: Tabular Foundation (неделя 2-3)
↓ зависимость
Phase 2: Common Modules (неделя 4-6)
↓ зависимость
Phase 3: Specialized Components (неделя 7-12)
↓ зависимость
Phase 4: Integration Layer (неделя 13-14)
Цель: Создать базовые строительные блоки, из которых будет собираться вся платформа.
Компоненты:
Phase 0
│
├── 0.1 Entity System (2 дня)
│ ├── Entity (abstract base)
│ ├── Field (базовый тип)
│ ├── Relation (связь между Entity)
│ └── Schema (описание структуры)
│
├── 0.2 Permission System (1.5 дня)
│ ├── User
│ ├── Role
│ ├── Permission (read, write, delete)
│ └── RBAC engine
│
├── 0.3 Activity System (1 день)
│ ├── Activity (create, update, delete)
│ ├── Timestamp (created_at, updated_at)
│ ├── Actor (who did it)
│ └── Activity Log
│
├── 0.4 Basic Data Types (1 день)
│ ├── STRING
│ ├── NUMBER
│ ├── BOOLEAN
│ ├── DATE
│ └── SELECT
│
└── 0.5 Storage Layer (1.5 дня)
├── PostgreSQL setup
├── JSONB для flexible schemas
├── Migrations system
└── Query builder
Оценка: ~40 часов AI time (1 неделя)
Результат: Базовая платформа, на которой можно создавать произвольные Entity с полями и связями.
Цель: Реализовать табличную модель как фундамент для построения любых систем.
Компоненты:
Phase 1
│
├── 1.1 Table Engine (4 дня)
│ ├── Table (основная сущность)
│ ├── Dynamic schema (add/remove fields)
│ ├── Row CRUD operations
│ └── Validation rules
│
├── 1.2 Field Types (5 дней)
│ ├── Basic types (TEXT, NUMBER, BOOLEAN, DATE)
│ ├── Select types (SINGLE_SELECT, MULTI_SELECT)
│ ├── Reference types (LINK, LOOKUP, ROLLUP)
│ ├── Computed types (FORMULA, AUTO_NUMBER)
│ └── Special types (PERSON, EMAIL, PHONE, CURRENCY, LOCATION)
│
├── 1.3 View System (4 дня)
│ ├── Grid View (spreadsheet)
│ ├── Board View (kanban)
│ ├── Calendar View
│ ├── Gallery View
│ ├── Form View
│ └── Timeline View
│
├── 1.4 Relation Engine (3 дня)
│ ├── One-to-Many
│ ├── Many-to-Many (junction tables)
│ ├── Self-reference (hierarchy)
│ └── Auto-bidirectional links
│
├── 1.5 Computed Fields (3 дня)
│ ├── Formula engine (JavaScript-like)
│ ├── Lookup (value from related record)
│ └── Rollup (aggregation: SUM, COUNT, AVG)
│
└── 1.6 UI Components (3 дня)
├── Table Grid (React component)
├── Board Kanban (drag-drop)
├── Calendar component
└── Form builder
Оценка: ~80 часов AI time (2-3 недели)
Результат: Полнофункциональная табличная платформа (аналог Airtable/Notion). Можно создавать таблицы, поля, связи, views.
Цель: Добавить универсальные компоненты, используемые во всех системах.
Компоненты:
Phase 2
│
├── 2.1 User Management (4 дня)
│ ├── User registration & login
│ ├── Role management (Admin, Member, Viewer)
│ ├── Team/Workspace
│ └── Invitation system
│
├── 2.2 Permission System Extension (3 дня)
│ ├── Workspace-level permissions
│ ├── Table-level permissions
│ ├── Row-level permissions (beta)
│ └── Field-level permissions
│
├── 2.3 Activity & Comments (3 дня)
│ ├── Activity Feed component
│ ├── Comment system (@mentions)
│ ├── Reactions (emoji)
│ └── Edit history
│
├── 2.4 Attachments (2 дня)
│ ├── File upload (S3/local)
│ ├── File types (image, pdf, office)
│ ├── Inline preview
│ └── Version control (optional)
│
├── 2.5 Notifications (3 дня)
│ ├── Email notifications
│ ├── In-app notifications
│ ├── Webhook events
│ └── Notification settings
│
├── 2.6 Workflow Automation (5 дней)
│ ├── Trigger (field change, time-based)
│ ├── Condition (IF/THEN logic)
│ ├── Action (update field, send email, create record)
│ └── Visual workflow builder
│
├── 2.7 Form Builder (3 дня)
│ ├── Auto-generated forms from schema
│ ├── Custom form layouts
│ ├── Validation rules
│ └── Submit actions
│
├── 2.8 API Layer (4 дня)
│ ├── REST API (CRUD per table)
│ ├── GraphQL API
│ ├── Authentication (JWT)
│ ├── Rate limiting
│ └── API documentation (auto-generated)
│
└── 2.9 Filter & Search (3 дня)
├── Advanced filters (AND/OR groups)
├── Full-text search
├── Saved filters
└── Quick filters
Оценка: ~120 часов AI time (3-4 недели)
Результат: Универсальная low-code платформа с workflow, API, permissions, forms. Может использоваться для создания простых систем.
Цель: Добавить компоненты, специфичные для каждого типа системы (CRM, E-commerce, etc.).
По типам систем:
Phase 3
│
├── 3.1 CRM Components (15 дней)
│ ├── Lead Management
│ ├── Sales Pipeline (Kanban + analytics)
│ ├── Contact & Company modules
│ ├── Deal Forecasting
│ └── Email Templates & Sequences
│
├── 3.2 E-commerce Components (12 дней)
│ ├── Product Catalog (variants, categories)
│ ├── Shopping Cart
│ ├── Checkout Flow
│ ├── Payment Gateway integration
│ ├── Order Management
│ └── Inventory Tracking
│
├── 3.3 Project Management Components (10 дней)
│ ├── Sprint Planning
│ ├── Task Dependencies
│ ├── Time Tracking
│ ├── Gantt Chart
│ └── Burndown Charts
│
├── 3.4 CMS Components (8 дней)
│ ├── Content Blocks
│ ├── Media Library
│ ├── Taxonomy System
│ ├── SEO Tools
│ └── Multilingual Support
│
├── 3.5 Analytics/BI Components (10 дней)
│ ├── Semantic Layer (dimensions, measures)
│ ├── Chart Builder (10+ chart types)
│ ├── Dashboard Builder
│ ├── Drill-down
│ └── Data Connectors
│
├── 3.6 HR Components (8 дней)
│ ├── Recruitment Pipeline
│ ├── Performance Reviews
│ ├── Payroll Calculator
│ └── Benefits Management
│
├── 3.7 Accounting Components (12 дней)
│ ├── Chart of Accounts
│ ├── Double-entry Engine
│ ├── Journal Entries
│ ├── Depreciation Calculator
│ └── Tax Calculator
│
└── 3.8 Other Systems (15 дней)
├── Helpdesk (Ticket management, SLA)
├── Marketing (Campaigns, Lead capture)
├── LMS (Courses, Assessments)
└── Asset Management (Maintenance, Check-in/out)
Оценка: ~200 часов AI time (5-6 недель)
Результат: Специализированные модули для 10+ типов систем. Платформа может заменить Salesforce, Shopify, Jira, WordPress, etc.
Цель: Обеспечить интеграцию с внешними системами и сервисами.
Компоненты:
Phase 4
│
├── 4.1 API Connectors (5 дней)
│ ├── Google Sheets
│ ├── Zapier integration
│ ├── Slack notifications
│ ├── Email (SMTP/IMAP)
│ └── Calendar (Google Calendar, Outlook)
│
├── 4.2 Data Import/Export (3 дня)
│ ├── CSV import/export
│ ├── Excel import/export
│ ├── JSON import/export
│ └── Field mapping
│
├── 4.3 Webhooks (2 дня)
│ ├── Outgoing webhooks (on events)
│ ├── Incoming webhooks (trigger actions)
│ └── Retry logic
│
├── 4.4 Embeds & Widgets (2 дня)
│ ├── Embeddable forms
│ ├── Public views (read-only)
│ └── iFrame widgets
│
└── 4.5 Marketplace (3 дня)
├── Plugin system
├── Template marketplace
└── Component library
Оценка: ~60 часов AI time (2 недели)
Результат: Платформа интегрируется с внешним миром. Пользователи могут подключать Zapier, импортировать данные, использовать webhooks.
| Phase | Описание | Время (AI) | Время (Human) |
|---|---|---|---|
| Phase 0 | Core Primitives | 40 часов | ~400 часов |
| Phase 1 | Tabular Foundation | 80 часов | ~800 часов |
| Phase 2 | Common Modules | 120 часов | ~1200 часов |
| Phase 3 | Specialized Components | 200 часов | ~2000 часов |
| Phase 4 | Integration Layer | 60 часов | ~600 часов |
| ИТОГО | 500 часов | ~5000 часов |
Календарное время (AI): ~14 недель (3.5 месяца)
Календарное время (Human): ~140 недель (2.5 года)
Коэффициент ускорения: ~10x
3 уровня зрелости платформы:
Цель: Табличная платформа для создания простых систем (no-code Airtable-like).
Компоненты:
MVP Platform
│
├── Entity System
│ ├── Table (create, edit, delete)
│ ├── Field Types (10 базовых)
│ └── Row CRUD
│
├── Basic Views
│ ├── Grid View
│ └── Form View
│
├── Relations
│ └── One-to-Many (basic)
│
├── Permissions
│ ├── Workspace-level
│ └── Table-level
│
├── User Management
│ ├── Registration/Login
│ └── Basic roles (Owner, Member)
│
└── API
└── REST API (CRUD)
Время реализации: ~120 часов AI = 3 недели
Возможности MVP:
- Создание таблиц с полями
- Grid view для работы с данными
- Базовые связи между таблицами
- Простые права доступа
- REST API для интеграций
Не входит в MVP:
- Kanban/Calendar/Timeline views
- Workflow automation
- Advanced formulas
- Webhooks
- Специализированные модули (CRM, E-commerce)
Цель: Универсальная low-code платформа для создания любых систем.
Дополнительно к MVP:
Production Platform (MVP +)
│
├── Advanced Views
│ ├── Board/Kanban
│ ├── Calendar
│ ├── Timeline
│ └── Gallery
│
├── Computed Fields
│ ├── Formula
│ ├── Lookup
│ └── Rollup
│
├── Workflow Automation
│ ├── Trigger → Action
│ └── Visual builder
│
├── Advanced Permissions
│ ├── Row-level
│ └── Field-level
│
├── Activity & Comments
│ ├── Activity Feed
│ ├── @mentions
│ └── Reactions
│
├── Notifications
│ ├── Email
│ └── In-app
│
└── API Extensions
├── GraphQL
└── Webhooks
Время реализации: ~240 часов AI = 6 недель
Возможности Production:
- Все возможности MVP
- Множественные views (Kanban, Calendar, etc.)
- Автоматизация через workflow
- Детальная система прав
- Комментарии и уведомления
Использование: Можно заменить Airtable, Notion, Monday.com
Цель: Специализированные решения для индустрий (CRM, E-commerce, ERP, etc.).
Дополнительно к Production:
Enterprise Platform (Production +)
│
├── CRM System
│ ├── Lead Management
│ ├── Sales Pipeline
│ └── Forecasting
│
├── E-commerce System
│ ├── Product Catalog
│ ├── Shopping Cart
│ └── Checkout
│
├── PM System
│ ├── Sprint Planning
│ ├── Dependencies
│ └── Time Tracking
│
├── CMS System
│ ├── Content Blocks
│ ├── Media Library
│ └── SEO Tools
│
├── Analytics/BI
│ ├── Dashboard Builder
│ ├── Charts (10+ types)
│ └── Semantic Layer
│
├── Accounting
│ ├── Chart of Accounts
│ ├── Double-entry
│ └── Tax Calculator
│
└── Integration Layer
├── Zapier, Slack, Email
├── Import/Export (CSV, Excel)
└── Plugin Marketplace
Время реализации: ~500 часов AI = 14 недель
Возможности Enterprise:
- Все возможности Production
- Специализированные модули для 10+ индустрий
- Глубокие интеграции
- Marketplace плагинов
Использование: Может заменить Salesforce, Shopify, Jira, WordPress, QuickBooks, etc.
┌─────────────────────────────────────────────────────────────────┐
│ TIMELINE (14 недель = 3.5 месяца) │
└─────────────────────────────────────────────────────────────────┘
Week 1: Phase 0 — Core Primitives
├── Entity, Field, Relation
├── Permissions (User, Role, RBAC)
├── Activity System
└── Storage Layer (PostgreSQL)
Week 2-3: Phase 1 — Tabular Foundation
├── Table Engine
├── Field Types (20+)
├── Views (Grid, Board, Calendar, Gallery, Form, Timeline)
├── Relation Engine
└── Computed Fields
Week 4-6: Phase 2 — Common Modules
├── User Management
├── Advanced Permissions
├── Activity & Comments
├── Attachments
├── Notifications
├── Workflow Automation
├── Form Builder
├── API (REST + GraphQL)
└── Filter & Search
Week 7-12: Phase 3 — Specialized Components
├── CRM (Lead, Pipeline, Forecasting)
├── E-commerce (Product, Cart, Checkout, Payment)
├── PM (Sprint, Dependencies, Time Tracking)
├── CMS (Blocks, Media, SEO)
├── Analytics (Dashboard, Charts, Drill-down)
├── HR (Recruitment, Payroll, Performance)
├── Accounting (Double-entry, Tax)
└── Others (Helpdesk, Marketing, LMS, Asset)
Week 13-14: Phase 4 — Integration Layer
├── API Connectors (Google, Zapier, Slack)
├── Import/Export (CSV, Excel, JSON)
├── Webhooks
├── Embeds
└── Marketplace
Концепция: Препроцессор + генератор кода из конфигураций.
Алгоритм:
# ═══════════════════════════════════════════════════════════
# АВТОМАТИЧЕСКАЯ ГЕНЕРАЦИЯ ПЛАТФОРМЫ
# ═══════════════════════════════════════════════════════════
def build_platform():
"""
Автоматически строит платформу из конфигураций
"""
# ШАГ 1: Загрузить конфигурации компонентов
components = load_component_configs()
# → [Entity, Field, Relation, Permission, Activity, ...]
# ШАГ 2: Построить граф зависимостей
dependency_graph = build_dependency_graph(components)
# → Entity → Field → Relation
# ШАГ 3: Топологическая сортировка (определить порядок)
build_order = topological_sort(dependency_graph)
# → [Entity, Field, Relation, User, Permission, ...]
# ШАГ 4: Генерация кода для каждого компонента
for component in build_order:
generate_component_code(component)
# → Backend (Python/FastAPI)
# → Frontend (React/TypeScript)
# → Database (SQL migrations)
# → API (OpenAPI spec)
# ШАГ 5: Сборка платформы
build_backend()
build_frontend()
apply_migrations()
# ШАГ 6: Тестирование
run_unit_tests()
run_integration_tests()
# ШАГ 7: Деплой
deploy_to_staging()
# После approval:
deploy_to_production()
Входные данные: YAML конфигурации компонентов (как в CONSTRUCTOR_ARCHITECTURE.md)
Выходные данные:
- Backend API (Python/FastAPI)
- Frontend UI (React/TypeScript)
- Database schema (PostgreSQL)
- API documentation (OpenAPI)
Пример конфигурации компонента:
# components/crm/contact.yaml
---
meta:
layer: universal
name: Contact
version: 1.0.0
fields:
name:
type: STRING
required: true
max_length: 200
email:
type: EMAIL
required: false
unique: true
phone:
type: PHONE
required: false
format: international
company:
type: RELATION
target: Company
relation_type: many_to_one
views:
- grid
- board
- calendar
permissions:
create: [member, admin]
read: [member, admin, viewer]
update: [member, admin]
delete: [admin]
Генератор автоматически создаст:
# Auto-generated from components/crm/contact.yaml
from pydantic import BaseModel, EmailStr
from typing import Optional
from datetime import datetime
class Contact(BaseModel):
id: UUID
name: str
email: Optional[EmailStr] = None
phone: Optional[str] = None
company_id: Optional[UUID] = None
created_at: datetime
updated_at: datetime
@app.post("/api/contacts")
@require_permission("contact.create")
def create_contact(contact: Contact):
# Auto-generated CRUD
pass
@app.get("/api/contacts")
@require_permission("contact.read")
def list_contacts():
pass
// Auto-generated from components/crm/contact.yaml
interface Contact {
id: string;
name: string;
email?: string;
phone?: string;
company_id?: string;
created_at: Date;
updated_at: Date;
}
// Auto-generated form
export const ContactForm: React.FC = () => {
return (
<Form>
<Input name="name" type="text" required />
<Input name="email" type="email" />
<Input name="phone" type="tel" />
<Select name="company_id" relation="Company" />
</Form>
);
};
// Auto-generated views
export const ContactGrid: React.FC = () => { /* ... */ };
export const ContactBoard: React.FC = () => { /* ... */ };
export const ContactCalendar: React.FC = () => { /* ... */ };
-- Auto-generated from components/crm/contact.yaml
CREATE TABLE contacts (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
name VARCHAR(200) NOT NULL,
email VARCHAR(255) UNIQUE,
phone VARCHAR(50),
company_id UUID REFERENCES companies(id),
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);
CREATE INDEX idx_contacts_email ON contacts(email);
CREATE INDEX idx_contacts_company ON contacts(company_id);
# Auto-generated OpenAPI spec
/api/contacts:
post:
summary: Create contact
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
responses:
201:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
| Неделя | Компонент | Что автоматизируем |
|---|---|---|
| 1-2 | Code Generator | Backend (FastAPI), Frontend (React), Database (SQL) |
| 3 | Migration System | Автоматическое применение изменений схемы |
| 4 | Test Generator | Unit tests, Integration tests |
| 5 | API Doc Generator | OpenAPI spec, GraphQL schema |
| 6 | Deployment Pipeline | CI/CD (GitHub Actions) |
Результат: При изменении YAML конфигурации → автоматически:
1. Генерируется код (backend + frontend)
2. Создаются миграции БД
3. Генерируются тесты
4. Обновляется API документация
5. Деплоится на staging для проверки
Табличная модель — универсальный фундамент
- Table = Entity = любая сущность
- Field Types (20+) покрывают 99% потребностей
- Relations + Formulas = full database power
- Views = разные способы работы с одними данными
Каскадная архитектура компонентов
- Primitive → Component → Module → Entity → System
- Каждый уровень строится на предыдущем
- Невозможно "перепрыгнуть" фазу
Общие компоненты > Уникальные
- 80% компонентов — общие (Entity CRUD, List, Filter, etc.)
- 20% — специализированные (Cart, Pipeline, Ticket)
- Фокус на общих компонентах = максимальная польза
Автоматизация — ключ к масштабированию
- YAML конфигурации → генератор кода
- Одна конфигурация → backend + frontend + database + tests + docs
- Изменение конфигурации → автоматический deploy
MVP < Production < Enterprise
- MVP (3 недели) = табличная платформа
- Production (6 недель) = универсальная low-code платформа
- Enterprise (14 недель) = специализированные индустриальные решения
Версия: 1.0.0
Дата: 2026-02-17
Статус: Active — полная архитектура платформы определена
Источники: 15 систем (CRM, E-commerce, ERP, PM, CMS, Analytics, HR, Helpdesk, Accounting, Tabular, Marketing, LMS, Asset, MDM, WMS)