Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Lodestone-Team/lodestone_core

The backend for Lodestone, A free, open source server hosting tool for Minecraft and other multiplayers
https://github.com/Lodestone-Team/lodestone_core

axum backend minecraft minecraft-server-wrapper rust

Last synced: about 1 month ago
JSON representation

The backend for Lodestone, A free, open source server hosting tool for Minecraft and other multiplayers

Awesome Lists containing this project

README

        

[![Contributors][contributors-shield]][contributors-url]
[![Issues][issues-shield]][issues-url]
[![Build][workflow-shield]][workflow-url]





Logo

Lodestone



Client for the Lodestone project


Website(Beta WIP) »





·
Report Bug
·
Request Feature


### !!Repo Deprecated!!

This repo is functionally deprecated in favour of the new mono repo: https://github.com/Lodestone-Team/lodestone

However, due to Lodestone CLI still pointing to this repo to fetch the latest releases, this repo is not archived.

### Built With

* [![Rust][Rust]][Rust-url]

(back to top)

## Getting Started (end user)

You should not download Lodestone Core directly due to its lack of ability to self-update. Please use [Lodestone CLI](https://github.com/Lodestone-Team/lodestone_cli) instead.

### Using Docker Image

As of v0.4.3 we have added Docker support to lodestone core.
Our precompiled images will be based on the newest release available from: `ghcr.io/lodestone-team/lodestone_core`.
Alternatively, you may build your own image using the default `Dockerfile`, not additional arguments required.

> **Note**
> You may add additional ports as you wish to forward, but 16662 is the default port served in the image.
> You may add a volume for your lodestone instance to be accessible, in the example below, you can create a volume first by using `docker volume create lodestone`.

Docker CLI example:
```sh
docker run -d \
--name lodestone \
--restart unless-stopped \
-p 16662:16662 \
-v lodestone:/home/user/.lodestone \
ghcr.io/lodestone-team/lodestone_core
```
Docker Compose example:

Download the docker-compose.yml file from this repo using
```sh
wget https://raw.githubusercontent.com/Lodestone-Team/lodestone_core/main/docker-compose.yml
```
and then run it using
```sh
docker compose up -d
```
Alternatively, create docker-compose.yml yourself:
```yml
version: '3.8'
services:
lodestone:
container_name: lodestone
image: ghcr.io/lodestone-team/lodestone_core
restart: unless-stopped
ports:
- "16662:16662"
volumes:
- lodestone:/home/user/.lodestone

volumes:
lodestone:
```

## Getting Started (development)

Please make sure you have `cargo` and `rustc`, for instruction on how to install the Rust toolchain, see here: [rustup.rs](https://rustup.rs/).

### Prerequisites

These instructions apply to Ubuntu 20.04 LTS and later.

* `build-essential` is required for the Rust toolchain.
```sh
sudo apt-get install build-essential
```
* `pkg-config` and `libssl-dev` are required to compile Axum
```sh
sudo apt-get install pkg-config libssl-dev
```
* `cpuidtool` is required to query CPU information
```sh
sudo apt-get install cpuidtool libcpuid-dev
```
A few other packages are needed to compile Lodestone
```sh
sudo apt-get install libffi-dev libmagic-dev file
```

### Installation
#### Running the client

1. Clone the repo
```sh
git clone https://github.com/Lodestone-Team/client
```
2. By default Lodestone stores its data in `~/.lodestone`. If you would like to override it for development & testing please define the `LODESTONE_PATH` environment variable to override it.
```sh
export LODESTONE_PATH=~/test_dev
```
3. Running
```sh
cargo run --bin main
```

(back to top)

## Contributing

Contribution is welcome, please join our [Discord](https://discord.gg/yKrSZXbhNx) for more details.

(back to top)

## License

This project uses the GNU Affero General Public License v3.0. See our LICENSE files for details. For an alternate (commercial) license, please raise an issue.

(back to top)

## Credits

Active members of the Lodestone client team:

* [Peter Jiang (CheatCod)](https://github.com/CheatCod) - Lead Developer
* [Kevin Huang (Ynng)](https://github.com/Ynng) - Developer
* [Mark Sun (Lemonsity)](https://github.com/Lemonsity) - Developer

(back to top)

[contributors-shield]: https://img.shields.io/github/contributors/Lodestone-Team/client?style=for-the-badge
[contributors-url]: https://github.com/Lodestone-Team/client/graphs/contributors

[issues-shield]: https://img.shields.io/github/issues/Lodestone-Team/client?style=for-the-badge
[issues-url]: https://github.com/Lodestone-Team/client/issues
[workflow-shield]: https://img.shields.io/github/actions/workflow/status/Lodestone-Team/client/push.yml?style=for-the-badge
[workflow-url]: https://github.com/Lodestone-Team/lodestone_core/actions
[license-shield]: https://img.shields.io/github/license/github_username/repo_name.svg?style=for-the-badge
[license-url]: https://github.com/github_username/repo_name/blob/master/LICENSE.txt
[product-screenshot]: images/screenshot.png
[React.js]: https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB
[React-url]: https://reactjs.org/
[Rust]: https://img.shields.io/badge/RUST-000000?style=for-the-badge&logo=RUST&logoColor=white
[Rust-url]: https://www.rust-lang.org/
[TypeScript]: https://img.shields.io/badge/TypeScript-000000?style=for-the-badge&logo=TypeScript&logoColor=white
[TypeScript-url]: https://www.typescriptlang.org/
[Node.js]: https://img.shields.io/badge/Node.js-000000?style=for-the-badge&logo=Node.js&logoColor=white
[Node.js-url]: https://nodejs.org/en/
[Express.js]: https://img.shields.io/badge/Express.js-000000?style=for-the-badge&logo=Express.js&logoColor=white
[Express.js-url]: https://expressjs.com/