This commit is contained in:
2025-12-29 16:58:56 +03:00
commit 524f3ebf23
62 changed files with 30925 additions and 0 deletions

152
REQUIREMENTS.md Normal file
View File

@ -0,0 +1,152 @@
# Team Planner - Требования к приложению
## Описание продукта
Приложение для команды разработки, позволяющее собирать бэклог идей, приоритизировать его, проводить брейнштормы, оценивать задачи и оставлять комментарии.
---
## Функциональные требования
### 1. Управление идеями
#### 1.1 Список идей
Таблица со следующими полями для каждой идеи:
| Поле | Описание | Тип |
|------|----------|-----|
| Статус | Текущее состояние идеи (Новая, В обсуждении, Одобрена, В работе, Готово, Отклонена) | Enum |
| Приоритет | Важность идеи (Критический, Высокий, Средний, Низкий) | Enum |
| Модуль | Где реализуется (Frontend, Backend, AI, Mobile, Infrastructure, Other) | Enum/Multi-select |
| Суть идеи | Краткое описание идеи | Text |
| Для кого | Целевая аудитория / пользователь | Text |
| Какую боль решает | Проблема, которую решает идея | Text |
| Роль AI | Что делает ИИ в рамках этой идеи (если применимо) | Text |
| Способ проверки | Быстрый способ валидации идеи / MVP | Text |
| Комментарии | Обсуждение и заметки | Text (список комментариев) |
| Цвет | Цветовая маркировка строки | Color |
| Оценка времени | AI-генерируемая оценка трудозатрат | Calculated |
#### 1.2 Редактирование идей
- **Inline-редактирование**: возможность редактировать любое поле прямо в таблице двойным кликом
- **Быстрое изменение статуса и приоритета** через dropdown
- **Автосохранение** изменений
#### 1.3 Drag & Drop
- Перемещение идей в списке для ручной сортировки
- Визуальная индикация при перетаскивании
- Сохранение порядка после перемещения
#### 1.4 Цветовая маркировка
- Возможность назначить цвет строке для визуального выделения
- Предустановленная палитра цветов
- Фильтрация по цвету
### 2. Сортировка и фильтрация
#### 2.1 Сортировка
- По любому полю (клик на заголовок колонки)
- Множественная сортировка (Shift + клик)
- Сохранение настроек сортировки
#### 2.2 Фильтры
- Фильтр по статусу
- Фильтр по приоритету
- Фильтр по модулю
- Фильтр по цвету
- Текстовый поиск по всем полям
- Сохранение пресетов фильтров
### 3. AI-оценка времени
#### 3.1 Управление командой
- Список членов команды с ролями:
- Backend-разработчик
- Frontend-разработчик
- AI/ML-инженер
- Аналитик
- Тестировщик (QA)
- DevOps
- Дизайнер
- Project Manager
- Количество сотрудников каждой роли
#### 3.2 Матрица производительности
Для каждого сотрудника/роли указывается время на задачи разной сложности:
| Сложность | Описание | Пример времени |
|-----------|----------|----------------|
| Trivial | Тривиальная задача | 1-2 часа |
| Easy | Лёгкая задача | 0.5-1 день |
| Medium | Средняя задача | 2-3 дня |
| Hard | Сложная задача | 1-2 недели |
| Epic | Эпик / большая фича | 2-4 недели |
#### 3.3 AI-функционал
- Анализ описания идеи
- Определение необходимых ролей для реализации
- Оценка сложности для каждой роли
- Расчёт общего времени с учётом состава команды
- Рекомендации по оптимизации
### 4. Комментарии
- Добавление комментариев к идее
- Ответы на комментарии (треды)
- Упоминание участников (@mention)
- История комментариев
---
## Технические требования
### Backend (NestJS)
#### Стек технологий
- **Framework**: NestJS
- **Language**: TypeScript
- **Database**: PostgreSQL
- **ORM**: TypeORM
- **API**: REST + WebSocket (для real-time обновлений)
- **AI Integration**: ai-proxy service тут лежит гайд по интеграции /Users/vigdorov/dev/gptunnel-service/INTEGRATION.md
### Frontend (React + TypeScript)
#### Стек технологий
- **Framework**: React 18+
- **Language**: TypeScript
- **State Management**: Zustand
- **UI Library**: MUI
- **Table**: TanStack Table (react-table)
- **Drag & Drop**: dnd-kit / react-beautiful-dnd
- **HTTP Client**: Axios / React Query
- **Styling**: Tailwind CSS / CSS Modules
## Нефункциональные требования
### Производительность
- Виртуализация списка при большом количестве идей (1000+)
- Оптимистичные обновления UI
- Кэширование данных
### UX
- Отзывчивый интерфейс (< 100ms на действие)
- Keyboard shortcuts для частых операций
- Responsive design (desktop-first)
### Безопасность
- Валидация входных данных
- Rate limiting для AI-запросов
---
## Открытые вопросы
1. Нужна ли многопользовательская работа и разграничение прав?
НЕТ
2. Требуется ли история изменений (audit log)?
НЕТ
4. Нужен ли экспорт данных (CSV, Excel)?
НЕТ
5. Интеграция с внешними системами (Jira, Trello)?
НЕТ