# README
Pickaxx
A standalone web console for managing a Minecraft server instance.
The goals of this project are as follows:
- Minimal configuration, sane defaults (drop a server into the tool and go)
- Single binary, small memory footprint
- Basic authentication
Current state
- In development. It can start an existing minecraft server and send/receive output, but not much else.
- It can not yet bootstrap new server instances (i.e. drag and drop).
- It does not handle any authentication yet, making it not yet able to run safely on a public server.
Developer Setup
- Install gowatch
go get -u github.com/silenceper/gowatch
- Until this tool can bootstrap new Minecraft instances on it's own, manually download
server.jar
from Minecraft's site (see below), and copy this into the pathtestserver/server.jar
. - Run tests (or use
make test
). - Run
make
which will start the server. Load http://localhost:8080
Dependencies
- This project uses go-watch to run/restart the server.
- Compatible Java runtime (tested on OpenJDK 15.0.1).
- Minecraft server (tested on 1.16.4).
# Packages
No description provided by the author
# Constants
DefaultPort is the default minecraft server port.
DefaultWorkingDir is the default working directory.
JarFile is the name of the server jar as it exists on disk.
MaxMem is the maximum allocated memory.
MinMem is the minimum allocated memory.
Server Statuses.
Server Statuses.
Server Statuses.
Server Statuses.
Server Statuses.
# Variables
DefaultCommand is the name of the executable.
ErrInvalidClient occurs when a client is not valid.
ErrNoProcess occurs when no process exists to take an action on.
ErrProcessExists exists when a new server process can not be started.
# Structs
ClientManager is a collection of clients.
ProcessManager manages the Minecraft server's process lifecycle.
StatusNotifier handles a registery for observers of server state.
# Type aliases
ServerState describes the current state of a Minecraft server.