icubaby / SideRail
git clone https://github.com/icubaby/SideRail.git
v3.0.0 Β· 9d ago
Bold control panel for your server, one-click deploy on Railway
β
stars, 24h
β
stars, 7 days
+592
stars, 30 days Β· #491
592
β
total
1.5k
forks Β· 2 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageTypeScript
Licenseβ
Created2026-09-20 (1mo ago)
Last push9d ago
Watchers0
OwnerUser
GitHub topics
Links
- GitHub: github.com/icubaby/SideRail
- Releases Β· Issues Β· Hacker News mentions
README excerpt
**A bold, neobrutalist control panel β shipped toΒ Β in one click.** *Clean dashboards. Live stats. Gorgeous pages. No config, no fuss.* **One job, done right** No feature bloat. SideRail masters **HTTP-based transports behind a TLS edge** β every connection is clean, standard, and always `security=tls` on port `443`. **Impossible to ignore** A loud **neobrutalist** UI β thick borders, hard shadows, animated icons β that looks razor-sharp on phone and desktop alike. **Deploy and forget** The core engine pulls itself on first boot, the session secret is generated for you, and the DB just works. **Zero environment variables required.** **Team-friendly** The Owner adds Admins with scoped page access and personal data quotas β and every Admin only ever sees the users they created. Dashboard Live CPU, RAM, Swap and Storage metrics, plus one-click Backup & Restore of users, inbounds, admins and settings. Users Rich create form, summary cards, a fully responsive table, live Connected IPs , and per-user actions. Inbounds Five HTTP inbounds auto-seeded on first boot. Enable or disable only, each with a unique port and a random /api/... path. Activity Log A live timeline of every administrative event. Settings & Admins Owner and Admin roles, scoped permissions, and per-admin data quotas. Subscription A gorgeous per-user page with a live usage chart, QR codes and a base64 export for clients. Security JWT sessions, built-in rate limiting, and sniffing fully disabled for stability. **No code required. Just follow these steps:** **1. Fork this repository** β click **Fork** at the top-right to copy it to your GitHub account. **2. Create a Railway project** β head toΒ , then **New Project β Deploy from GitHub repo**, and pick your fork. **3. Deploy** β Railway reads the `Dockerfile` and `railway.json` and builds automatically. **4. Expose port `8080`** β open **Settings β Networking β Generate Domain**, and set the port to **`8080`**. > [!IMPORTANT] > SideRail listens on port **`8080`** β this is the **only** port you expose. The ports `10085` and `20000β20004` are the core engine's internal ports bound to `127.0.0.1`; they are private and must **not** be exposed. **5. Add a volume (optional)** β attach a **Volume** at **`/data`** so users, admins and settings survive redeploys. **6. Open your panel** β visit the generated `*.up.railway.app` domain, land on the **Setup** page, and create your **Owner** account. **All optional.** | Variable | Default | Description | |:--|:--|:--| | `PORT` | `8080` | HTTP port. **Expose this one on Railway.** | | `JWT_SECRET` | *auto* | Signs admin session cookies. Auto-generated and persisted if unset. | | `CORE_VERSION` | `v26.9.9` | Core engine release fetched on first boot. | | `SIDERAIL_DATA_DIR` | `/data` | Persistent data directory (mount a volume here). | | `PUBLIC_DOMAIN` | *auto* | Override for a custom domain. Falls back to `RAILWAY_PUBLIC_DOMAIN`. | | `CORE_API_PORT` | `10085` | Internal core