Веб-приложение для создания, управления и модерации проектов в учебных заведениях. Студенты вузов и школьники могут создавать проекты, приглашать участников и получать одобрение от модераторов.
- ✅ Регистрация и авторизация — с выбором типа (студент вуза / школьник)
- ✅ Создание проектов — с описанием, ссылками и участниками
- ✅ Управление участниками — приглашения через токены
- ✅ Модерация — администраторы одобряют/отклоняют проекты
- ✅ История изменений — отслеживание всех обновлений проекта
- ✅ Фильтрация по ролям — студент видит проекты вуза, школьник — школы
- ✅ Профиль пользователя — редактирование данных
- Vue 3 — прогрессивный UI фреймворк
- TypeScript — типизированный JavaScript
- Vite — быстрый сборщик проекта
- Pinia — управление состоянием
- Vue Router — маршрутизация
- Axios — HTTP клиент
- Vuetify 3 — компоненты UI
src/
├── pages/ # Страницы приложения
├── components/ # Переиспользуемые компоненты
├── ui/ # UI компоненты (Button, Input, etc.)
├── services/ # API интеграция
├── stores/ # Pinia управление состоянием
├── router/ # Маршруты приложения
├── plugins/ # Плагины (Vuetify)
├── assets/ # Статические файлы
└── main.ts # Точка входа
npm installСоздай или отредактируй .env:
VITE_API_BASE_URL=http://localhost:3000/# Разработка
npm run dev
# Сборка
npm run build
# Preview
npm run previewПолная документация находится в папке docs/:
- docs/README.md — описание проекта и возможности
- docs/SETUP.md — подробная установка и запуск
- docs/ARCHITECTURE.md — архитектура приложения
- docs/COMPONENTS.md — описание всех компонентов
- docs/SERVICES.md — API сервисы и методы
- docs/STORES.md — Pinia stores и управление состоянием
- docs/CONTRIBUTING.md — гайд для разработчиков
- Использует JWT токены для авторизации
- Токен сохраняется в
localStorage - Автоматически добавляется в заголовок
Authorization: Bearer <token>ко всем запросам
- STUDENT — студент (роль по умолчанию)
- UNIVERSITY_STAFF — модератор / сотрудник вуза
- ADMIN — администратор платформы
Фильтрация проектов по ролям:
- Студент вуза → видит только проекты вуза
- Школьник → видит только проекты школы
- Админ / Сотрудник → видит все проекты
Приложение взаимодействует с backend API:
- Локально:
http://localhost:3000 - Продакшен:
https://pd-projects-backend-production.up.railway.app
Подробнее: см. docs/SERVICES.md
При запуске backend с npm run seed доступны тестовые учётные записи:
student@example.com/password123— студентstaff@example.com/password123— модераторadmin@example.com/password123— администратор
Хочешь помочь с разработкой? Прочти CONTRIBUTING.md:
- Процесс разработки
- Стиль кода
- Как создавать компоненты
- Как добавлять новые фичи
MIT
- Backend — NestJS API сервер