Go to file
2025-09-08 16:28:31 +03:00
app Fix ts errors 2025-09-08 16:28:31 +03:00
components Fix ts errors 2025-09-08 16:28:31 +03:00
hooks Added reports page 2025-09-08 16:08:40 +03:00
lib fix env; add agent session hook stop 2025-09-08 00:21:05 +05:00
services Added reports page 2025-09-08 16:08:40 +03:00
types add vacancy uploading 2025-09-08 17:26:45 +05:00
.env.example fix env; add agent session hook stop 2025-09-08 00:21:05 +05:00
.eslintrc.json init 2025-08-31 00:27:33 +05:00
.gitignore init 2025-08-31 00:27:33 +05:00
next-env.d.ts init 2025-08-31 00:27:33 +05:00
next.config.js fix env; add agent session hook stop 2025-09-08 00:21:05 +05:00
package.json Added reports page 2025-09-08 16:08:40 +03:00
postcss.config.js init 2025-08-31 00:27:33 +05:00
README.md add vacancy uploading 2025-09-08 17:26:45 +05:00
tailwind.config.js init 2025-08-31 00:27:33 +05:00
tsconfig.json init 2025-08-31 00:27:33 +05:00
yarn.lock Added reports page 2025-09-08 16:08:40 +03:00

HR AI Frontend

Современная платформа для поиска работы с искусственным интеллектом, построенная на Next.js и TypeScript.

Возможности

  • 📋 Просмотр списка вакансий с поиском и фильтрацией
  • 🔍 Детальная информация о каждой вакансии
  • 📄 Загрузка резюме с уведомлением о подготовке сессии собеседования
  • 🔐 Авторизация через cookie-сессии (без JWT)
  • 🎨 Современный и адаптивный дизайн
  • Быстрая загрузка и отзывчивый интерфейс

Технологический стек

  • Framework: Next.js 14 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Icons: Lucide React
  • HTTP Client: Fetch API с cookie-авторизацией

Быстрый старт

  1. Установите зависимости:
yarn install
  1. Создайте файл .env.local (уже создан):
NEXT_PUBLIC_API_BASE_URL=http://localhost:8000
  1. Запустите development сервер:
yarn dev
  1. Откройте http://localhost:3000 в браузере

Структура проекта

├── app/                    # Next.js App Router
│   ├── globals.css        # Глобальные стили
│   ├── layout.tsx         # Корневой layout
│   ├── page.tsx          # Главная страница (список вакансий)
│   └── vacancy/[id]/     # Страница детальной информации о вакансии
├── components/           # React компоненты
│   └── ResumeUploadForm.tsx
├── lib/                  # Утилиты и API клиент
│   └── api-client.ts
├── types/               # TypeScript типы
│   └── api.ts
└── public/              # Статические файлы

API Integration

Приложение интегрируется с HR AI Backend API:

Основные эндпоинты:

  • GET /api/v1/vacancies/ - Получение списка вакансий
  • GET /api/v1/vacancies/{id} - Получение вакансии по ID
  • POST /api/v1/resumes/ - Загрузка резюме
  • GET /api/v1/sessions/current - Получение информации о сессии

Авторизация:

Все запросы выполняются с credentials: 'include' для работы с cookie-сессиями.

Особенности реализации

Загрузка резюме

  • Поддержка файлов: PDF, DOC, DOCX, TXT
  • Максимальный размер файла: 10 МБ
  • Валидация формы перед отправкой
  • Уведомление об успешной отправке

Поиск вакансий

  • Поиск по названию вакансии
  • Фильтрация активных вакансий
  • Красивое отображение карточек вакансий

Детальная страница вакансии

  • Полная информация о вакансии
  • Контактные данные
  • Форма для отклика прямо на странице