Files
team-planner/DEVELOPMENT.md
2025-12-29 16:58:56 +03:00

4.1 KiB
Raw Blame History

Правила локальной разработки

Обязательно к прочтению перед началом работы!


Инструменты

MCP серверы

  • Serena — для работы с кодом (символьная навигация, редактирование)
  • Context7 — для получения актуальной документации по библиотекам

Используй эти инструменты для эффективной работы с кодовой базой.


Локальное окружение

Порты

Сервис Порт
Frontend (React) 4000
Backend (NestJS) 4001
PostgreSQL 5432

База данных

PostgreSQL поднимается в Docker. Файл docker-compose.yml в корне проекта.

# Запуск БД
docker-compose up -d postgres

Правила работы

1. Никогда не запускай сервисы самостоятельно

ЗАПРЕЩЕНО запускать npm run dev, npm start и подобные команды.

Вместо этого:

  1. Убедись, что команда запуска есть в package.json
  2. Если команды нет — создай её
  3. Попроси пользователя запустить:
Запусти, пожалуйста:
cd backend && npm run dev

2. Тестирование — только ручное

После завершения задачи:

  1. Опиши сценарии для проверки
  2. Попроси пользователя проверить вручную
  3. Дождись фидбека

Формат:

Готово! Проверь, пожалуйста:

1. Открой http://localhost:4000
2. Нажми кнопку "Создать идею"
3. Заполни форму и сохрани
4. Убедись, что идея появилась в списке

Напиши, если что-то не работает.

3. Работа поэтапно

Делай работу небольшими итерациями:

  1. Один этап = одна логическая единица

    • Один endpoint
    • Один компонент
    • Одна фича
  2. После каждого этапа:

    • Сообщи что сделано
    • Дай сценарий проверки
    • Дождись подтверждения
  3. Не делай сразу много:

    • Весь CRUD за раз
    • Сначала GET, проверили, потом POST, проверили...

4. Команды в package.json

Все команды запуска должны быть в package.json:

// backend/package.json
{
  "scripts": {
    "dev": "nest start --watch",
    "build": "nest build",
    "start:prod": "node dist/main"
  }
}

// frontend/package.json
{
  "scripts": {
    "dev": "vite --port 4000",
    "build": "vite build",
    "preview": "vite preview"
  }
}

Чеклист перед началом работы

  • Прочитал CONTEXT.md
  • Прочитал ROADMAP.md (понял текущую фазу)
  • Понял задачу
  • Готов работать поэтапно
  • Помню: не запускаю сервисы сам, прошу пользователя

Пример правильного workflow

Пользователь: Сделай endpoint для получения списка идей

Агент:
1. Читает документацию через Context7 (NestJS, TypeORM)
2. Использует Serena для навигации по коду
3. Создаёт endpoint GET /api/ideas
4. Сообщает:

   "Создал endpoint GET /api/ideas.

   Запусти backend:
   cd backend && npm run dev

   Проверь:
   curl http://localhost:4001/api/ideas

   Должен вернуться пустой массив: { data: [], meta: {...} }"

5. Ждёт фидбек
6. Переходит к следующему этапу