docs: update main readme with project overview and links

This commit is contained in:
2026-01-06 19:32:10 +03:00
parent 805e1a2791
commit 01b7e707ab

View File

@@ -2,22 +2,58 @@
[![Build Status](https://drone.mrixs.me/api/badges/minecraft-platform/platform/status.svg)](https://drone.mrixs.me/minecraft-platform/platform) [![Build Status](https://drone.mrixs.me/api/badges/minecraft-platform/platform/status.svg)](https://drone.mrixs.me/minecraft-platform/platform)
Этот репозиторий является центральной точкой для проекта "Платформа Minecraft". Он объединяет все компоненты системы с помощью Git-субмодулей и содержит основную конфигурацию для развертывания и CI/CD. Единая платформа для создания, управления и распространения сборок Minecraft. Включает в себя систему авторизации (совместимую с Authlib Injector), управление модпаками, скинами и мониторинг игровых серверов.
## Архитектура ---
Проект построен на микросервисной архитектуре с использованием Docker и Docker Compose. Автоматическая сборка и развертывание осуществляется с помощью Drone CI. ## Возможности
### Компоненты (субмодули) ### 🔐 Авторизация и Лаунчер
- **Yggdrasil API**: Полная совместимость с лаунчерами, поддерживающими Authlib Injector APIs (HMCL, Prism Launcher и др.).
- **Система профилей**: Поддержка скинов (загрузка через веб-интерфейс).
- **Восстановление сессий**: Лаунчер запоминает вход пользователя.
* `backend/`: Основной бэкенд-сервер на Go. Реализует Yggdrasil API, Web API и Admin API. ### 📦 Управление Модпаками
* `frontend/`: Веб-интерфейс на Vue.js для пользователей и администраторов. - **Автоматический импорт**: Поддержка импорта сборок с **CurseForge** и **Modrinth** (.mrpack).
* `ping-helper/`: Вспомогательный WebSocket-сервис на Go для измерения пинга. - **Обновления**: Система версионирования сборок. Автоматическое обновление клиентов.
* `launcher/`: Кастомный игровой лаунчер (форк HMCL). - **Оптимизация**: Дедупликация файлов для экономии места на сервере.
### Конфигурация ### 🖥️ Веб-интерфейс
- **Личный кабинет**: Управление профилем и скинами.
- **Админ-панель**: Управление пользователями, серверами и модпаками.
- **Мониторинг**: Отображение статуса серверов и онлайн-карты (**BlueMap**).
* `.drone.yml`: Пайплайн для Drone CI. ### ⚙️ Технические особенности
* `docker-compose.yml`: Описание сервисов для Docker. - **Микросервисная архитектура** (Go, Vue.js, PostgreSQL).
* `Caddyfile`: Конфигурация веб-сервера Caddy. - **Асинхронная обработка**: Фоновые задачи для тяжелых операций (импорт сборок) с WebSocket-уведомлениями.
* `scripts/`: Вспомогательные скрипты (миграции, бэкапы). - **Безопасность**: JWT авторизация, Rate Limiting, защита паролей (Argon2/Bcrypt).
---
## Документация
Вся детальная документация находится в папке `docs/`:
* [🚀 Руководство по развертыванию](docs/DEPLOYMENT.md): Инструкции по установке, настройке Docker Compose и переменных окружения.
* [📖 Руководство пользователя и администратора](docs/USER_GUIDE.md): Инструкции по работе с сайтом, лаунчером и администрированию платформы.
* [🔌 OpenAPI Specification](backend/internal/api/openapi.yaml): Описание API для разработчиков.
## Быстрый старт (Dev)
```bash
# 1. Клонирование репозитория
git clone --recursive https://git.mrixs.me/minecraft-platform/platform.git
cd platform
# 2. Настройка переменных окружения
cp .env.example .env
# (Отредактируйте .env)
# 3. Генерация ключей
mkdir -p secrets
openssl genrsa -out secrets/private_key.pem 2048
openssl rsa -in secrets/private_key.pem -pubout -out secrets/public_key.pem
# 4. Запуск
docker-compose up -d --build
```