Skip to content

CubeShield/Cube-API

Repository files navigation

Cube API Cube API

Rest API, которое используется в сервисах CubeStudio.

Стек

Python FastAPI MongoDB

Дорожная карта Cube-API

  • Первый запуск Cube-API
  • Поддержка CurseForge
  • Dockerfile, docker-compose, контейнеризация Cube-API
  • Дополнительный контент (Ресурспаки, Шейдеры, Конфиги) (WIP)
  • Поддержка сторонних сервисов (например, Yandex.Drive, Google.Drive, Dropbox и т.д.)
  • Добавление скачивания некоторых файлов напрямую с Cube-API, например конфигов
  • Возможность наличия нескольких обновляемых Instances

Полезные ссылки

Как работают Instance?

Что такое Instance? Instance — это исчерпывающие описание сборки Minecraft, содержащей в себе моды разных сервисов.

Коллекция instances:

{
  "uuid": "0", // Идентификатор проекта
  "name": "CubeShield Experiment: Example", // Название сборки
  "version": "0.0.1", // Версия сборки
  "changelog": "", // Изменения версии
  "game_version": "1.20.4", // Версия Minecraft
  "loader": "fabric" // Загрузчик Minecraft
}

Коллекция mods:

{
    // Modrinth Мод
    "integration": "modrinth",
    "project": "simple-voice-chat", // Slug или ID мода
    "version": "fabric-1.20.4-2.5.1", // Slug или ID версии мода
    "side": "both"
},
{
    // CurseForge Мод
    "integration": "curseforge",
    "project": "298744", // ID проекта
    "version": "5082629", // ID файла мода
    "side": "both"
}

Коллекция resourcepacks:

{
    // Modrinth Ресурспак
    "integration": "modrinth",
    "project": "simple-voice-chat", // Slug или ID ресурспака
    "version": "fabric-1.20.4-2.5.1", // Slug или ID версии ресурспака
    "side": "both"
},
{
    // CurseForge Ресурспак
    "integration": "curseforge",
    "project": "298744", // ID проекта
    "version": "5082629", // ID файла ресурспака
    "side": "both"
}

Переменные среды

CURSEFORGE_API_KEY= # Ключ CurseForge Studios
BACKEND_PORT=8000 # Порт API

MONGO_ROOT_USER= # Логин MongoDB
MONGO_ROOT_PASS= # Пароль MongoDB
MONGO_PORT=4000 # Порт MongoDB

Деплой

Клонирование репозитория Cube-API

git clone https://github.com/fadegor05/Cube-API.git

Перемещение в директорию репозитория

cd Cube-API

Сборка, запуск контейнера в фоновом режиме

docker-compose up --build -d

Остановка контейнера

docker container stop cube-api
Not an official Minecraft product. We are in no way affiliated with or endorsed by Mojang Synergies AB, Microsoft Corporation or other rightsholders.

About

Rest API for CubeStudio services

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •