Node.js 18+yarn или npm
cd FRONT
yarn install
yarn dev
- Регистрация и аутентификация пользователей
- Загрузка файлов
- Просмотр списка файлов
- Переименование и редактирование комментариев
- Скачивание файлов
- Публичная ссылка (включение/выключение, копирование)
- Административный интерфейс управления пользователями
- Список пользователей (уровень, файлы, объём, путь хранилища)
- Смена ролей пользователей (с учётом иерархии)
- Удаление пользователя (опционально с удалением файлов)
- Переход в хранилище выбранного пользователя (через
?userId=)
/— список файлов (свои файлы)/?userId=<id>— список файлов пользователя (для админа; права дополнительно проверяются бэком)/admin/users— админка: список доступных пользователей
Frontend — Vite (:5173)
Backend — Django (:8000)
Для работы с CSRF в dev добавлен trusted origin:
Используется Vite proxy:
все запросы с префиксом /api перенаправляются на backend.
Аутентификация основана на Django sessions + CSRF cookie.
Axios передаёт cookie с заголовком X-CSRFToken.
- Vite + TypeScript
- Proxy Vite → Django для
/api - Axios client (cookies + CSRF)
- Redux Toolkit: auth state
- React Router: базовые маршруты
- ProtectedRoute
- NavBar (зависит от авторизации)
- Login (POST /api/auth/login/)
- Logout (GET /api/auth/logout/)
- Register (POST /api/auth/register/)
- Валидация регистрации на фронте по ТЗ
- Список файлов (метаданные, без контента)
- Загрузка файла с комментарием
- Удаление файла
- Переименование файла
- Изменение комментария
- Скачивание файла
- Просмотр файла (если поддерживается браузером) или скачивание
- Публичная ссылка (включение/выключение, копирование)
- Скачивание по публичной ссылке (без авторизации)
- UI списка: действия, tooltips, sticky header, scroll
- Список пользователей
- Смена ролей пользователей
- Удаление пользователя
- Переход в хранилище выбранного пользователя (admin)
- Глобальная обработка ошибок API (единый формат отображения)
- README: инструкции деплоя и сборки