Платформа для создания и прохождения онлайн-курсов.
- Python 3.10+
- Node.js 18+
- PostgreSQL 14+
РАБОЧИЙ СЕРВЕР БУДЕТ НА СИСТЕМЕ ЛИНУКС
Создайте базу данных PostgreSQL:
CREATE DATABASE lms_db;cd backend
# Создайте виртуальное окружение
python -m venv venv
source venv/bin/activate # Linux/Mac
# или
venv\Scripts\activate # Windows
# Установите зависимости
pip install -r requirements.txt
# Примените миграции
alembic upgrade head
# Запустите сервер
uvicorn app.main:app --reloadБэкенд будет доступен на http://localhost:8000
cd frontend
# Установите зависимости
npm install
# Запустите dev сервер
npm run devФронтенд будет доступен на http://localhost:3000
POST /api/auth/register- РегистрацияPOST /api/auth/login- ВходGET /api/auth/me- Текущий пользовательGET /api/courses/- Список курсовGET /api/courses/my- Мои курсыPOST /api/courses/- Создать курсGET /api/courses/{id}- Детали курсаDELETE /api/courses/{id}- Удалить курсPOST /api/courses/{id}/enroll- Записаться на курсGET /api/courses/{id}/lessons- Уроки курсаPOST /api/courses/{id}/lessons- Создать урокPOST /api/quizzes/- Создать тестGET /api/quizzes/lesson/{lesson_id}- Тест урокаPOST /api/quizzes/{quiz_id}/attempt- Отправить попыткуGET /api/quizzes/attempt/{quiz_id}/best- Лучшая попыткаGET /api/quizzes/certificates/my- Мои сертификаты
lms-platform/
├── backend/
│ ├── app/
│ │ ├── models.py # Модели БД
│ │ ├── schemas.py # Pydantic схемы
│ │ ├── auth.py # Аутентификация
│ │ ├── database.py # Подключение к БД
│ │ ├── config.py # Настройки
│ │ ├── main.py # Главный файл
│ │ └── routers/ # API роутеры
│ └── requirements.txt
└── frontend/
├── src/
│ ├── api.js # API клиент
│ ├── App.jsx # Главный компонент
│ ├── main.jsx # Точка входа
│ ├── index.css # Стили
│ ├── components/ # Компоненты
│ └── pages/ # Страницы
└── package.json