Getting Started
What is Saba-chan?
Saba-chan (サバちゃん / 사바쨩) is a modular game server management platform that lets you manage multiple servers from a single interface.
The name is a Japanese wordplay — "server" (サーバー) sounds like "mackerel" (鯖, さば).
Note: This project has no affiliation with any VTuber who may share the same nickname. We're just a fish.
Key Features
- Multi-game support — Palworld, Minecraft, Project Zomboid, and infinitely extensible via modules
- Dual interface — Electron GUI desktop app + Rust TUI CLI
- Discord bot — Control servers from Discord chat
- Module system — Python-based lifecycle modules; no core recompilation needed
- Extension system — Docker isolation, SteamCMD automation, and more
- Cloud relay — Remote access via secure relay server (no port forwarding needed)
- Auto-detection — Automatically detects running game servers
- Auto-update — GitHub Releases–based update system
- 10 languages — Full localization across all components
- Crash-safe — Daemon crash doesn't affect running game servers
System Requirements
| Item | Requirement |
|---|---|
| OS | Windows 10 / 11 |
| Rust | Latest stable (source build only) |
| Node.js | 18.0+ (GUI & Discord bot) |
| Python | 3.x (module lifecycle execution) |
| Disk | 500MB minimum (excluding game servers) |
| Network | Game server ports must be open |
Note: When using the installer, Rust is not required. Python and Node.js are automatically bootstrapped as portable environments.
Installation
Installer (Recommended)
- Download the latest installer from GitHub Releases or the home page.
- Run
saba-installer.exeand choose your installation directory. - The installer bundles everything — no external dependencies required. Portable runtimes are used that don't touch your system PATH or registry.
Building from Source
git clone https://github.com/WareAoba/saba-chan.git
cd saba-chan
Full Build (Windows PowerShell)
.\scripts\build-windows.ps1
This runs 3 build tasks in parallel:
- Rust workspace —
cargo build --release --workspace→saba-core.exe,saba-chan-cli.exe,saba-chan-updater.exe - Electron GUI —
npm run build→npm run package - Discord Bot —
npm install --omit=dev→ directory copy
Individual Builds
# Core Daemon only
cargo build --release
# GUI development mode
cd saba-chan-gui && npm install && npm start
# CLI only
cargo build --release -p saba-chan-cli
Quick Start
Step 1: Launch Saba-chan
Run the GUI (Saba-chan.exe) or CLI (saba-chan-cli.exe). The Core Daemon starts automatically.
Step 2: Create an Instance
- GUI: Click "+ Add Server"
- CLI: Enter
:instance create
Choose your game and provide a name, executable path, and working directory.
Step 3: Configure
Set ports, RCON/REST passwords (auto-generated if enabled), and game-specific settings.
Step 4: Start the Server
- GUI: Click the ▶ button on the server card
- CLI: Select the server and start it
Step 5: Monitor
- Real-time server status and console output
- Optional remote control via Discord bot
Architecture Overview
┌─────────────────┐ HTTP API ┌──────────────────┐
│ Electron GUI │ ◄───────────────► │ Core Daemon │
│ (React 18) │ 127.0.0.1:57474 │ (Rust/Axum) │
└─────────────────┘ └────────┬─────────┘
│
┌─────────────────┐ HTTP API │
│ CLI (TUI) │ ◄─────────────────────────►│
│ (Ratatui) │ │
└─────────────────┘ ┌─────────┴──────────┐
│ │
┌─────────────────┐ ┌──────▼──────┐ ┌──────▼──────┐
│ Discord Bot │ │ Modules │ │ Extensions │
│ (discord.js) │ │ (per game) │ │ (Docker etc)│
└─────────────────┘ └─────────────┘ └─────────────┘
All logic flows through the Core Daemon. Interfaces communicate only via HTTP REST API — never touching files or processes directly.
Communication
- Daemon ↔ GUI/CLI: HTTP REST on
127.0.0.1:57474, authenticated via.ipc_token - Daemon ↔ Modules: stdin JSON → stdout JSON
- Client Watchdog: Heartbeat every 30s; daemon shuts down 60s after all clients disconnect
Next Steps
- Modules — How game modules work
- Extensions — Docker, SteamCMD, and more
- Discord Bot — Set up the Discord bot
- Configuration — Config files and environment variables
- API Reference — REST API endpoints