Primakov Alexandr Alexandrovich b297bcbba9 Add deployment documentation and enhance project setup scripts
- Introduced `DEPLOYMENT.md` for comprehensive deployment instructions.
- Added `start.bat` and `start.sh` scripts for unified project startup on Windows and Linux/Mac.
- Updated `.gitignore` to exclude additional files and directories.
- Enhanced `main.py` to serve static frontend files and handle SPA routing.
- Configured Vite to output the frontend build to the backend public directory.
- Minor adjustments in `ReviewDetail.tsx` for improved data handling.
2025-10-12 23:27:41 +03:00
..
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00
2025-10-12 23:15:09 +03:00

AI Review Frontend

React + TypeScript + Vite frontend для AI Code Review Agent.

Установка

# Установите зависимости
npm install

Настройка

Создайте .env файл (опционально):

VITE_API_URL=http://localhost:8000
VITE_WS_URL=ws://localhost:8000

По умолчанию используется proxy в vite.config.ts, так что можно не создавать .env.

Запуск

# Dev сервер
npm run dev

# Откроется на http://localhost:5173

Сборка

# Production сборка
npm run build

# Предпросмотр
npm run preview

Структура

src/
├── api/                # API клиент
│   ├── client.ts       # REST API
│   └── websocket.ts    # WebSocket
├── components/         # React компоненты
│   ├── WebSocketStatus.tsx
│   ├── RepositoryForm.tsx
│   ├── RepositoryList.tsx
│   ├── ReviewProgress.tsx
│   ├── ReviewList.tsx
│   └── CommentsList.tsx
├── pages/              # Страницы
│   ├── Dashboard.tsx
│   ├── Repositories.tsx
│   ├── Reviews.tsx
│   └── ReviewDetail.tsx
├── types/              # TypeScript типы
│   └── index.ts
├── App.tsx             # Главный компонент
├── main.tsx            # Entry point
└── index.css           # Стили

Технологии

  • React 18 - UI библиотека
  • TypeScript - типизация
  • Vite - сборщик
  • React Router - роутинг
  • TanStack Query - управление состоянием сервера
  • Tailwind CSS - стилизация
  • date-fns - работа с датами

Страницы

Dashboard /

  • Статистика ревью
  • Последние ревью
  • Real-time обновления

Repositories /repositories

  • Список репозиториев
  • Добавление нового
  • Webhook URL для настройки

Reviews /reviews

  • История всех ревью
  • Фильтры по статусу
  • Детали по клику

Review Detail /reviews/:id

  • Информация о PR
  • Прогресс ревью
  • Список комментариев
  • Повтор при ошибке

Real-time обновления

WebSocket подключается автоматически при запуске приложения.

События:

  • review_started - начало ревью
  • review_progress - прогресс
  • review_completed - завершение

Разработка

# Линтинг
npm run lint

# Проверка типов
npx tsc --noEmit

Proxy настройка

В vite.config.ts настроен proxy для API и WebSocket:

proxy: {
  '/api': 'http://localhost:8000',
  '/ws': {
    target: 'ws://localhost:8000',
    ws: true,
  },
}

Это позволяет делать запросы к /api/... без указания полного URL.