mine.cr
mine.cr
A small Minecraft Java Edition server written in Crystal.
This implementation targets Minecraft 1.8.9 / protocol 47. It implements the handshake, status ping, offline-mode login, basic play packets, keep-alives, chat echoing, and a generated superflat spawn world.
Running
Install Crystal 1.9 or newer, then run:
shards build
./bin/mine
By default the server listens on 0.0.0.0:25565. You can override that with:
MINE_HOST=127.0.0.1 MINE_PORT=25565 crystal run src/mine.cr
Connect with a Minecraft 1.8.9 client. The server is offline-mode only: it does not authenticate with Mojang and generates deterministic offline UUIDs.
Scope
The goal is a compact protocol implementation that lets a player join and stand in a flatland world. It is not a complete Minecraft server: persistence, survival mechanics, mobs, inventory, block updates, permissions, encryption, and modern protocol versions are intentionally outside this first implementation.
mine.cr
- 0
- 0
- 0
- 0
- 0
- 18 days ago
- April 27, 2026
Mon, 27 Apr 2026 13:42:41 GMT