|
||
---|---|---|
routes | ||
scripts | ||
servers/template | ||
stores | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
index.html | ||
package-lock.json | ||
package.json | ||
pnpm-lock.yaml | ||
run.js | ||
serverjars.properties | ||
utils.js |
README.md
Warnings:
- Arth Panel is in beta and should not be used in production yet.
- There are several issues with the docker image currently, and we recommend running quartz directly for now.
Documentation can be found here
Quartz
Quartz is a backend for Arth Panel, a lightweight self-hosted Minecraft server panel. Quartz is made with Node and Express.
How to run without docker
- Grab the source code with
git clone https://codeberg.org/arth/quartz
- Install the packages with
npm i
- Run with
node run
How to configure
- stores/settings.json is where you can modify settings.
- stores/secrets.json is where you can enter your stripe key if you want payments enabled.
How to run with docker (Unsupported)
- Download the image from docker hub with the command
sudo docker pull arthmc/quartz:latest
- Run the image with
sudo docker run -p 4000:4000 arthmc/quartz:latest
. To change the port, replace the first 4000 with the port number you want.
Dependencies
- Arth Uses the
curl
command to download plugins and theconvert
command to downscale images. If you want these functionalities, you'll need to install those commands.
Contributing
To run a dev server, follow the instructions in "how to run without docker"
Contributing Guidelines
- Please format your code with Prettier VSCode extension or an alternative that achieves the same results.
Check out our frontend's progress
Why Arth Panel?
The main difference between an alternative like pufferpanel or pterodactyl is that it's meant to work in a way so that if an issue were to occur, you could easily just SSH into the machine and run the jar directly in a folder, so you know that your server's uptime is not dependant on a panel someone else made working flawlessly.
To-do list
✅ Basic file data storage that stores details about servers.
✅ Basic API that provides details about servers to frontend.
✅ Ability to run Minecraft servers with specified versions and softwares
✅ Basic communication with frontend for terminal
✅ Consistent routes
✅ Locking a customer's assets behing a password
❓ Protecting customer assets with end-to-end encryption