Zonya1202 /
calorie-tracker-fullstack
Fullstack приложение для учёта калорий: React 19 + TypeScript + RTK Query на фронте, FastAPI + SQLAlchemy на бэке. Монорепозиторий, Docker Compose для локального запуска.
59/100 healthLoading repository data…
sparta2025 / repository
Fullstack-приложение для учёта внутренних заявок. Backend: Python + FastAPI + SQLAlchemy + SQLite. Frontend: React + TypeScript + Vite + CSS Modules. Админка с Basic Auth, фильтрация, поиск, сортировка, пагинация 10/20/50/100/Все. Docker Compose. GitHub Actions CI.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Fullstack-приложение: FastAPI + React + SQLite.
| Требование | Реализация |
|---|---|
| Создание заявки | POST /api/requests — форма создания на главном экране |
| Просмотр списка | GET /api/requests — таблица с фильтрацией, поиском, сортировкой |
| Фильтрация по status / priority | ?status=&priority= — выпадающие списки на фронте |
| Поиск по title / description | ?search= — ILIKE по обоим полям |
| Сортировка по дате / приоритету | ?sort_by=created_at&sort_order=desc — клик по заголовку колонки |
| Изменение статуса | PATCH /api/requests/{id}/status — выпадающий список в строке таблицы |
| Удаление (только админ) | DELETE /api/requests/{id} — Basic Auth, подтверждение на фронте |
| Пагинация | ?page=&page_size= — 10/20/50/100/Все, номера страниц + переход |
| Админ admin:admin | Basic Auth, проверяется на DELETE и опционально на PATCH |
| done нельзя редактировать не-админу | PATCH проверяет статус: 400 с сообщением |
| done нельзя удалить не-админу | DELETE доступен только админу |
| Админ может менять статус done | PATCH с Basic — разрешён любой переход |
| Админ может удалять done | DELETE с Basic — без ограничений |
| Ошибки с осмысленным HTTP / текстом | 400, 401, 404 — русские сообщения |
| Поиск/фильтры/сортировка на backend | Все query-параметры обрабатывает SQLAlchemy |
| Frontend — один экран | Хедер + сайдбар (форма) + контент (таблица) |
| Состояния загрузки / пусто / ошибка | Спиннер, «Нет заявок», красный блок с кнопкой |
| Тема светлая контрастная |
# Клонировать/перейти в директорию проекта, затем:
docker compose up --build
Готово:
| Переменная | По умолчанию | Описание |
|---|---|---|
ADMIN_USERNAME | admin | Логин администратора |
ADMIN_PASSWORD | admin | Пароль администратора |
DATABASE_URL | sqlite+aiosqlite:///./data/requests.db | Путь к БД |
BACKEND_PORT | 8000 | Порт backend внутри контейнера |
FRONTEND_PORT | 5000 | Порт frontend на хосте |
# Backend
cd backend
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000
# Frontend (отдельный терминал)
cd frontend
npm install
npm run dev
# Vite dev-сервер на http://localhost:5173 (прокси /api → localhost:8000)
| Метод | Путь | Auth | Описание |
|---|---|---|---|
GET | /api/auth/login | Basic | Проверка учётных данных |
GET | /api/requests | — | Список заявок |
POST | /api/requests | — | Создать |
PATCH | /api/requests/{id}/status | — | Сменить статус (Basic → права админа) |
DELETE | /api/requests/{id} | Basic | Удалить |
| Параметр | Тип | Пример | Описание |
|---|---|---|---|
status | string | done | Фильтр по статусу |
priority | string | high | Фильтр по приоритету |
search | string | тест | Поиск по названию и описанию |
sort_by | string | created_at, priority | Поле сортировки |
sort_order | string | asc, desc | Направление |
page | int | 2 | Номер страницы |
page_size | int | 20, 0 | Размер страницы (0 = все) |
done)done)Selected from shared topics, language and repository description—not editorial ratings.
Zonya1202 /
Fullstack приложение для учёта калорий: React 19 + TypeScript + RTK Query на фронте, FastAPI + SQLAlchemy на бэке. Монорепозиторий, Docker Compose для локального запуска.
59/100 healthindex.css — белый фон, тёмный текст, синие акценты |
| Язык — русский | Весь UI на русском |
| Frontend порт 5000 | docker-compose маппит 5000 → 80 |
| Docker | backend/Dockerfile, frontend/Dockerfile, docker-compose.yaml |
| GitHub Actions | .github/workflows/ci.yaml — ruff lint + сборка + smoke-тест |