Фронтенд-приложение для публикации и просмотра учебных материалов в формате современного SPA.
Проект собирается как легкое клиентское приложение с понятной структурой, маршрутизацией, модульной организацией кода и подготовкой к дальнейшему развитию.
Текущая версия включает:
- главную страницу
- страницу списка курсов
- страницу деталей курса
- mock API для локальной разработки
- базовый layout с навигацией
- React
- TypeScript
- React Router
- Vite
- Docker
- понятная и предсказуемая структура проекта
- разделение страниц, модулей и общих UI-компонентов
- развитие от mock API к реальному backend без ломки структуры
- высокая производительность и аккуратный клиентский код
- mobile-first подход
Проект изначально собирается с прицелом на хорошие показатели в PageSpeed и Lighthouse:
- без лишних библиотек и тяжелого клиента
- с простой DOM-структурой
- с аккуратной адаптивной версткой
- с минимизацией лишних перерисовок и побочных эффектов
src/
app/
components/
modules/
pages/
mocks/
styles/
Кратко по ролям:
app— каркас приложения, router, layoutcomponents— общие UI-компонентыmodules— функциональные части приложенияpages— страницы маршрутовmocks— локальные данные для разработкиstyles— общие стили проекта
Проект запускается через Docker.
Текущий docker-compose.yml — это только локальная dev-среда:
- используется для разработки
- запускает Vite в dev-режиме
- не является production-конфигурацией
- не предназначен как финальный deploy-образ
Из корня проекта:
docker compose up --buildПосле запуска приложение доступно по адресу:
Для запуска в фоне:
docker compose up --build -dОстановка:
docker compose downПланируемые направления:
- расширение каталога курсов
- фильтрация и поиск
- развитие UI
- подключение реального API
- административная часть
- CI/CD и deploy-процесс