Skip to content

LeoCristt/Digital-Queue

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Digital-Queue

Проект представляет собой full-stack приложение с бэкендом на FastAPI и фронтендом на React.js с использованием Next.js.


🛠 Технологии

Backend (FastAPI)

  • FastAPI — высокопроизводительный фреймворк для построения API
  • SQLAlchemy — ORM для работы с базами данных
  • Alembic — инструмент для миграций базы данных
  • JWT-аутентификация (python-jose, passlib, argon2_cffi)
  • GigaChat API — интеграция с нейросетевыми моделями
  • Pydantic — валидация данных
  • Pytest — тестирование

Frontend (React + Next.js)

  • Next.js 15 — фреймворк для React с SSR/SSG
  • React 19 — последняя версия React
  • Axios — HTTP-клиент для взаимодействия с API
  • JWT-декодер — работа с токенами авторизации
  • QRCode генератор (qrcode.react) — генерация QR-кодов

⚙️ Установка и настройка

Предварительные требования

  • Node.js ≥ 18.x
  • Python ≥ 3.10
  • PostgreSQL (или другая СУБД)

1. Клонирование репозитория

git clone [https://github.com/your-project-link.git](https://github.com/LeoCristt/Digital-Queue.git)
cd Digital-Queue

2. Настройка бэкенда

cd backend 
python -m venv venv
venv/scripts/activate
pip install -r req.txt
alembic upgrade head
cd ..

3. Настройка фронтенда

cd frontend
npm install

🚀 Запуск проекта

Бэкенд (из папки backend)

uvicorn app.main:app --reload

Фронтенд сервер будет доступен по адресу: http://localhost:3000
Документация Swagger: http://127.0.0.1:8000/docs

Фронтенд (из папки frontend)

npm run dev

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

Корневая директория (Digital-Queue/)

Главная папка проекта, содержащая два основных субпроекта:

  • backend/ — серверная часть на FastAPI
  • frontend/ — клиентская часть на Next.js

Backend (backend/)

Основные элементы:

Элемент Назначение
alembic/ Миграции базы данных (Alembic)
app/ Основная логика приложения (роутеры, модели, сервисы)
static/ Статические файлы (изображения, CSS, JS для шаблонов)
tests/ Юнит-тесты и интеграционные тесты
venv/ Виртуальное окружение Python (не коммитится)
sql_app.db SQLite-база данных (для разработки)

Конфигурационные файлы:

Файл Описание
.gitignore Игнорируемые файлы для Git
alembic.ini Настройки миграций Alembic
req.txt Зависимости Python (аналог requirements.txt)

Frontend (frontend/)

Основные элементы:

Элемент Назначение
.next/ Сгенерированные файлы Next.js (не коммитится)
node_modules/ Установленные зависимости NPM (не коммитится)
src/ Исходный код приложения (компоненты, страницы, стили)

Конфигурационные файлы:

Файл Описание
next.config.ts Конфигурация Next.js (TypeScript)
tailwind.config.ts Настройки Tailwind CSS
postcss.config.mjs Конфигурация PostCSS
eslint.config.mjs Правила линтинга ESLint
tsconfig.json Настройки TypeScript

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5