A self-hosted, blazing-fast web dashboard for managing Minecraft Java servers. No cloud. No subscription. No external dependencies. Just you, your hardware, and a dashboard that actually feels good to use.
![]() Dashboard |
![]() Live Console |
![]() Mod & Plugin Browser |
![]() Server Settings |
![]() Backups |
![]() File Browser |
![]() Player Management |
![]() Public Access |
![]() Mobile |
- Server management β import, create, clone, start/stop Vanilla, Paper, Purpur, Folia, Fabric, Forge, and NeoForge servers
- Live console β WebSocket streaming with command input, presets, and log download
- Mod & plugin management β install, search, and bulk manage mods/plugins via Modrinth and CurseForge
- Worlds & datapacks β switch worlds, import, rename, delete with snapshot protection
- Player access β ops, whitelist, bans with Mojang UUID lookup and live player heads
- Backups β automatic snapshots before risky actions, manual snapshots, restore, and retention cleanup
- File browser β upload, download, edit configs/JSON/YAML/TOML
- Responsive UI β dark theme that works on desktop and mobile
- Public access β optional playit.gg integration
- Zero dependencies β no Docker, no Node runtime in production, no external database. Single ~13 MB binary.
| π Documentation | π¬ Discord |
|---|---|
| Installation guides, configuration tutorials, and API reference | Get help from the community and development team |
Windows (PowerShell):
irm getcliff.dev/install.ps1 | iexmacOS / Linux:
curl -fsSL getcliff.dev/install.sh | shThat's it. The installer downloads the prebuilt binary, starts the daemon, and prints your dashboard URL. Use -p <port> to install on a custom port:
irm getcliff.dev/install.ps1 | iex -- -p 8081curl -fsSL getcliff.dev/install.sh | sh -s -- -p 8081Download a cliff-<version>-<platform>-<arch>.zip from releases, extract it, and run:
cliff startAfter installing, cliff is available in your terminal:
| Command | Description |
|---|---|
cliff start |
Start the daemon in the background |
cliff stop |
Stop a running daemon |
cliff status |
Show daemon status (URL, uptime, PID) |
cliff update |
Check for and apply updates |
cliff uninstall |
Remove Cliff from this machine |
cliff version |
Print version information |
cliff help |
Show all commands and flags |
- Open
http://localhost:8080in your browser (orhttp://<your-server-ip>:8080from another device on the same network) - Create a local admin account on first visit
- Import an existing server folder/ZIP or create a new one from the dashboard
- Hit start β you're running
| Platform | Architecture |
|---|---|
| Windows | x86_64 (amd64) |
| Linux | x86_64 (amd64) |
| Linux | ARM64 |
| macOS | Intel (amd64) |
| macOS | Apple Silicon (arm64) |
Cliff ships as a single self-contained binary with embedded static web assets. No runtime dependencies.
| Component | Size |
|---|---|
| Daemon binary (Go, stripped) | ~12 MB |
| Static web assets (dashboard) | ~1.4 MB |
| Total packaged | ~13 MB |
| Metric | Value |
|---|---|
| RAM | ~13 MB |
| CPU | < 1% |
| Threads | ~19 |
| Extension | Files | Lines |
|---|---|---|
.go |
35 | 14,014 |
.tsx |
61 | 9,547 |
.css |
30 | 7,456 |
.ts |
6 | 949 |
.js |
26 | 248 |
| Total | 158 | 32,214 |
We welcome contributions! Check out CONTRIBUTING.md to get started.
This project is licensed under the GNU General Public License v3.
If you're building a hosting platform, a server panel, or anything else that could benefit from embedding Cliff, we'd love to talk. Reach out and let's figure it out together.
Made with β€οΈ by the Cliff Team
Releases β’ Issues β’ Stargazers β’ Discord








