opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

ServerBox: a Flutter app that charts server status and manages SSH, Docker, and ...
GitHub RepoImpressions4

Project Description

View on GitHub

Stop SSH-ing Into Servers Just to Check If They're Alive

You know the drill: you're on the couch, phone in hand, and a nagging thought hits—did that deploy go through? Is the server still breathing? So you fire up a terminal app, SSH into the box, and run htop for the hundredth time. It works, but it's clunky. There's got to be a better way to keep an eye on your infrastructure without living in a terminal. That's exactly the gap ServerBox (github.com/lollipopkit/flutter_server_box) is trying to fill.

ServerBox is a Flutter-based app that turns your server monitoring into something you can actually glance at. It charts CPU, sensors, GPU, and more for Linux, Unix, and Windows machines, and it bundles in a full SSH terminal, SFTP file management, and controls for Docker, processes, and systemd. It's not a web dashboard or a CLI tool—it's a native app for your phone, desktop, and even your watch.

What It Does

At its core, ServerBox is a cross-platform client that talks to your servers and visualizes their health. The README lists the headline features: status charts for CPU, sensors, and GPU, plus a built-in SSH terminal, SFTP support, and management views for Docker containers, running processes, and systemd services. It also includes S.M.A.R.T. disk health monitoring, which is a nice touch if you're paranoid about failing drives.

The project is written in Dart using Flutter, which explains the broad platform support. You can install it on iOS and macOS via the App Store, grab it on Android from GitHub releases, F-Droid, or OpenAPK, and run it on Linux and Windows from the same release channels. It's not a web app—this is a proper native client for each platform.

Under the hood, ServerBox leans on two key libraries: dartssh2 for SSH connectivity and xterm.dart for terminal emulation. That's how it pulls off the embedded SSH session without spawning an external terminal app. The architecture is straightforward: you point it at your server, it connects over SSH, and it gives you a rich interface for monitoring and managing that machine.

One thing worth noting: to push status updates to your phone without opening the app—like message notifications or home screen widgets—you'll need to install a companion tool called ServerBoxMonitor on your servers. The README points to a separate wiki for configuring that. So it's not purely a client; there's a small server-side component for the proactive monitoring features.

Why It's Cool

What makes ServerBox interesting isn't any single feature—it's the combination. Most server monitoring tools force you to choose between a pretty dashboard and a functional terminal. ServerBox tries to give you both in one place.

  • It's a Swiss Army knife for server admins. You can check CPU charts, kill a stuck process, edit a config file over SFTP, and restart a Docker container without ever leaving the app. That's a genuinely useful workflow for anyone who manages more than one box.

  • The platform coverage is rare. Flutter apps often end up as mobile-only, but this one targets desktop and even watchOS. The README mentions platform-specific features like biometric auth, message push, home widgets, and a watchOS app. That's a lot of surface area for a hobby project.

  • The translation community is active. The README credits individual contributors for German, Traditional Chinese, Indonesian, French, Dutch, Turkish, and Ukrainian translations, with more languages generated via GPT. That signals a project with real users beyond the original author's circle.

  • It's built on solid foundations. Using dartssh2 and xterm.dart rather than reinventing SSH or terminal emulation is a smart call. Those are established libraries, and it means the hard parts—protocol handling, terminal rendering—are battle-tested.

  • The licensing is honest. It's AGPLv3, which is a strong copyleft license. If you're building something on top of it, you need to share your source. That's a deliberate choice that keeps the project open.

How to Try It

Getting started is straightforward since ServerBox is packaged for most platforms. Head to the GitHub repository and grab the release for your OS, or use one of these:

  • iOS / macOS: Search for "ServerBox" on the App Store (id1586449703), or on macOS run brew install --cask server-box
  • Android: Download from GitHub releases, F-Droid, or OpenAPK
  • Linux / Windows: Download from GitHub releases or the project's CDN

The README has a warning worth repeating: only download packages from sources you trust. Stick to the official channels listed above.

Once you've got it installed, you'll need a server with SSH access. Add your server details, and you should be able to see status charts and open an SSH session right away. If you want the push notifications and home widgets, you'll need to set up ServerBoxMonitor on the server side—check the app wiki for setup details and common issues.

If you run into problems, the README asks you to paste the full log (accessible from the top right of the home page) when opening an issue. The project also has a QQ group, a Telegram channel, and a Discord server if you prefer real-time help.

Final Thoughts

ServerBox is a genuinely useful tool for anyone who manages Linux servers and is tired of juggling multiple apps for monitoring and administration. It's not trying to replace your full remote setup—you'll still want a dedicated terminal for heavy lifting—but for quick status checks and routine management tasks, it's hard to beat having everything in one native app. The Flutter foundation means it'll likely only get better as more platforms and features are added. If you're already living in the SSH world, this is worth a weekend try.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: 8462e874-9a9b-43ac-b123-f12d99dcf3dbLast updated: August 11, 2026 at 02:43 AM