Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blueamethyst-studios/bluecloud
A simple, modular and leightweight Minecraft cloud system desgined for being high-available, easy to use and easy to extend.
https://github.com/blueamethyst-studios/bluecloud
blueamethyst cloudsystem containerization docker fabricmc kubernetes minecraft minecraft-cloud papermc velocity
Last synced: 3 months ago
JSON representation
A simple, modular and leightweight Minecraft cloud system desgined for being high-available, easy to use and easy to extend.
- Host: GitHub
- URL: https://github.com/blueamethyst-studios/bluecloud
- Owner: BLUEAMETHYST-Studios
- License: gpl-3.0
- Created: 2024-05-17T12:52:44.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-08-12T06:15:18.000Z (5 months ago)
- Last Synced: 2024-09-28T12:01:26.313Z (3 months ago)
- Topics: blueamethyst, cloudsystem, containerization, docker, fabricmc, kubernetes, minecraft, minecraft-cloud, papermc, velocity
- Language: Kotlin
- Homepage:
- Size: 360 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
*Logo by [Bing AI](https://chat.bing.com/)*
# 🔮 BlueCloud
A simple, modular and leightweight [Minecraft](https://minecraft.net) cloud system desgined for being high-available, easy to use and easy to extend.
> [!WARNING]
> Do not use the cloud yet, it's still work in progress.## 🎯 Goals
Our goals is **not** to create a production-ready cloud system. We want to learn more about backend development.
If you are searching for a production-ready cloud system, you should take a look at [nextCluster](https://github.com/nextCluster/nextCluster).## 🍏 Features
| Feature | Description | Status |
|----------------|--------------------------------------------------------------|--------|
| **Runner** | The module that handles process creation. | 🚧 |
| **API** | A api for developers using dependency injection. | 🚧 |
| **Wrapper** | The wrapper between the node and the runner. | 🚧 |
| **Node** | The main part of the cloud system. | 🚧 |
| **Templates** | A template system for services. | ❌ |
| **Sync** | A synchronisation service for the cloud system. (e.g. Netty) | ❌ |
| **CLI** | A command line interface for the cloud system. | ❌ |
| **Website** | A website for this project. | ❌ |
| **Dashboard** | A web interface for managing the cloud. | ❌ |
| **Modules** | A module system for the cloud system | ❌ |
| **Docker** | A Docker wrapper for cloud services. | ❌ |
| **Kubernetes** | A Kubernetes wrapper for cloud services. | ❌ |### 📦 Modules
| Module | Description | Status |
|--------------------------|--------------------------------------------------------------------------------|--------|
| **Rest-API** | A rest api for the cloud system. | ❌ |
| **Proxy-Module** | A module consisting of an maintenance, motd and tablist system. | ❌ |
| **NPCs** | An NPC system that gives players the opportunity to connect to other servers. | ❌ |
| **Signs** | An Sign system that gives players the opportunity to connect to other servers. | ❌ |
| **Ingame-Notify** | A ingame notification system (e.g. when a cloud service starts). | ❌ |
| **Webhook-Notify** | A webhook for notifications (e.g. when a cloud service starts). | ❌ |
| **GeyserMC-Integration** | An integration for [GeyserMC Standalone](https://geysermc.org/) as a module. | ❌ |
| **Scaling** | An autoscaling solution for BlueCloud. | ❌ |### 📱 Platforms
> [!NOTE]
> Bedrock platforms are planned for the future.
>
| Platform | Description | Status |
|------------------------------------------------------|-----------------------------------------------|--------|
| **[Velocity](https://papermc.io/software/velocity)** | A modern Minecraft Proxy solution. | 🚧 |
| **[PaperMC](https://papermc.io/software/paper)** | A modern [Spigot](https://spigotmc.org) Fork. | 🚧 |
| **[FabricMC](https://fabricmc.net/)** | A modern modded Minecraft Server solution. | ❌ |## ⬇️ Installation
Currently, you have to compile it yourself.```shell
git clone https://github.com/BLUEAMETHYST-Studios/bluecloud.git
cd bluecloud
./gradlew build
```## 😎 Develop with BlueCloud
| Module | Description | available on |
|-------------|-----------------------------------------------------|------------------|
| **api** | The API for developers using dependency injection. | Modules, Plugins |
| **node** | Could be used for modules. | Modules |
| **runner** | Could be used to implement new ServiceProcessTypes. | Modules |
| **wrapper** | Could be used to modify the Wrapper logic. | Modules |
| **common** | Contains useful utilities. - **unsafe to use!** | Modules |### 🚧 Dependencies
> [!IMPORTANT]
> Since this cloud system is not production-ready, we do not provide any dependencies. If you still want to use it you can push it to your MavenLocal by using `gradlew :api:publishToMavenLocal`.Maven
```xml
me.blueamethyst.bluecloud
api
${VERSION}"
provided
```
Gradle
```groovy
dependencies {
compileOnly 'me.blueamethyst.bluecloud:api:${VERSION}'
}
```Gradle (KTS)
```kotlin
dependencies {
compileOnly("me.blueamethyst.bluecloud:api:${VERSION}")
}
```