Files

🏃‍♂️ Бегущий Башкир - Беговой Клуб

Docker Vue.js Go PostgreSQL

Полнофункциональная платформа для бегового клуба "Бегущий Башкир" с современной веб-архитектурой.

🎯 О проекте

Бегущий Башкир — это цифровая экосистема для бегового сообщества Башкортостана, объединяющая:

  • 🌐 Веб-сайт (Vue.js SPA)
  • 🔧 REST API (Go + PostgreSQL)
  • 📊 Аналитику (Node.js)
  • 🔐 Автоматическую SSL (Certbot)
  • 🐳 Контейнеризацию (Docker Compose)

🏗️ Архитектура

┌─────────────────────────────────────────┐
│         Docker Compose Cluster          │
├─────────────────────────────────────────┤
│  Nginx → API_BB (Go) → DB_BB (Postgres) │
│      ↑         ↑            ↑           │
│   Certbot   Analytics    Frontend       │
│      (SSL)   (Node.js)   (Vue.js)       │
└─────────────────────────────────────────┘

Основные возможности

  • Управление тренировками (дистанция, темп, калории)
  • Система событий (забеги, тренировки, семинары)
  • Достижения и награды с верификацией
  • Персональная статистика с графиками
  • Галерея фотографий мероприятий
  • Многоязычность (русский/башкирский)
  • Адаптивный дизайн (mobile-first)
  • Автоматические SSL сертификаты
  • Health checks и мониторинг

🚀 Быстрый старт

Требования

  • Docker 20.10+
  • Docker Compose 2.0+
  • 2 ГБ RAM
  • Порты 80, 443 открыты

Установка

# 1. Клонирование
git clone <repository>
cd project

# 2. Настройка окружения
cp .env.example .env
# Отредактируйте .env файл

# 3. Запуск
docker-compose up -d

# 4. Проверка
docker-compose ps

Сайт будет доступен по адресу: https://ваш-домен

📁 Структура проекта

├── BB/                          # Бегущий Башкир
│   ├── api_bb/                  # Go API сервер
│   └── bbvue/                   # Vue.js фронтенд
├── nginx/                       # Веб-сервер
├── certbot/                     # SSL сертификаты
├── valitovgaziz/analytics/     # Аналитика
└── docker-compose.yml          # Оркестрация

🔧 Технологический стек

Backend:

  • Go 1.25+ (Chi, GORM, JWT)
  • PostgreSQL 15
  • Node.js (аналитика)

Frontend:

  • Vue 3 (Composition API)
  • Pinia (state management)
  • Vue Router
  • Vite

Инфраструктура:

  • Docker & Docker Compose
  • Nginx (обратный прокси)
  • Certbot (Let's Encrypt)

📡 API Endpoints

GET    /api/health              # Проверка здоровья
POST   /api/auth/register       # Регистрация
POST   /api/auth/login          # Вход
GET    /api/user/workouts       # Тренировки пользователя
POST   /api/events/register     # Регистрация на событие
GET    /api/achievements        # Достижения

Полная документация API: docs/api.md

🛠️ Разработка

# Запуск в режиме разработки
docker-compose -f docker-compose.dev.yml up

# Просмотр логов
docker-compose logs -f api_bb

# Остановка
docker-compose down

# Полная очистка
docker-compose down -v

📊 Мониторинг

  • Health checks: GET /api/health
  • Статус сервисов: docker-compose ps
  • Логи в реальном времени: docker-compose logs -f
  • Использование ресурсов: docker stats

🔒 Безопасность

  • JWT аутентификация
  • HTTPS (автоматические SSL)
  • Хеширование паролей (bcrypt)
  • Защита от SQL-инъекций
  • CORS политики
  • Валидация входных данных

🤝 Вклад в проект

  1. Форкните репозиторий
  2. Создайте ветку для фичи (git checkout -b feature/amazing)
  3. Закоммитьте изменения (git commit -m 'Add amazing feature')
  4. Запушьте в ветку (git push origin feature/amazing)
  5. Откройте Pull Request

📞 Контакты

📄 Лицензия

Проект использует смешанные лицензии в зависимости от компонентов. Подробнее в файлах LICENSE соответствующих директорий.

🙏 Благодарности

  • Команде разработчиков
  • Участникам бегового клуба
  • Сообществу Open Source

🏆 Беги вместе с нами!
🏃‍♂️ Бегущий Башкир — больше чем бег, это образ жизни!


Обновлено: Декабрь 2025 | Версия: 1.0