Веб-приложение для подсчёта рейтинга пловцов на основе результатов соревнований, проводимых в Нижегородской области.
Проект направлен на автоматизацию учёта результатов, упрощение регистрации на мероприятия и предоставление прозрачной системы ранжирования спортсменов.
- 📊 Просмотр рейтинга спортсменов
- 👤 Регистрация и авторизация пользователей
- 📝 Управление профилем спортсмена и организации
- 🏁 Создание и публикация соревнований (для организаторов)
- 📥 Загрузка результатов соревнований
- 🔄 Автоматический пересчёт рейтингов
- 🗺️ Интерактивная карта тренировочных объектов
Клиентская часть реализована с использованием современных инструментов:
- Next.js — SSR + CSR фреймворк
- React — библиотека для UI
- TypeScript — строгая типизация
- Tailwind CSS — утилитарная стилизация
- Zustand — управление состоянием
- Axios — HTTP-клиент для API
- NextAuth — аутентификация
- Jest + React Testing Library — unit и интеграционные тесты
- ESLint — линтинг
Проект построен по методологии Feature-Sliced Design (FSD):
- /app — инициализация приложения
- /screens — описания страниц
- /entities — бизнес-сущности (спортсмены, соревнования)
- /features — бизнес-логика (рейтинг, фильтры)
- /widgets — крупные интерфейсные блоки
- /shared — переиспользуемые компоненты, утилиты
# Клонировать репозиторий
git clone https://github.com/shmatozz/Ranking-App-Web.git
cd Ranking-App-Web
# Установка зависимостей
npm install
# Запуск в режиме разработки
npm run dev
# Сборка и запуск для продакшена
npm run build
npm run start