opensourceprojects.dev

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

Wake-on-LAN dashboard with cron scheduling and network scanning
GitHub RepoImpressions4

Project Description

View on GitHub

UpSnap: A Self-Hosted Wake-on-LAN Dashboard That Actually Makes Sense

There are some tools that feel like they solve a problem you didn't know you had, and then you can't live without them. Wake-on-LAN (WoL) is one of those things that's incredibly handy but usually requires either a CLI tool, some hacky script, or fiddly mobile apps. You have a home server, a media PC, or maybe a gaming rig tucked under your desk, and you want to wake it up from bed, but you don't want to SSH into a router just to send a magic packet.

UpSnap fixes that. It's a self-hosted Wake-on-LAN dashboard that is both approachable for a quick local setup and robust enough for a homelab environment. It doesn't just send magic packets; it actively scans your network, shows you what's online, and lets you schedule power states. If you manage machines remotely, this is one of those "why didn't I build this sooner" projects.

What It Does

At its core, UpSnap is a web-based dashboard that lets you:

  • Send Wake-on-LAN packets to machines on your network with a click of a button.
  • Scan your network to automatically discover devices and their IP/MAC addresses, logging them for you.
  • Schedule tasks like "wake up the Plex server every weekday at 7:30 AM" or "shut down the NAS every night at 2 AM" (depending on what your hardware supports).
  • Track online/offline status for all your devices in real-time.

It's built with a modern stack (Go backend, React frontend) and runs nicely in a Docker container, which makes it a no-brainer addition to any server that already runs a few containers.

Why It's Cool

Most WoL tools are just "send packet, done." UpSnap is cool because it layers practical features on top of that base functionality without becoming bloated.

1. Scheduled Power Management
This is the killer feature. If you have machines that don't need to run 24/7, you can set a strict schedule. You can tell UpSnap to wake a machine at 8 AM and shut it down (gracefully, if you have the right agents installed) at 11 PM. It turns a simple utility into a total power management solution for your home lab, which is both eco-friendly and cost-saving on your electricity bill.

2. Network Scanning with Auto-Import
Instead of manually entering MAC addresses, UpSnap can scan your subnet and populate the dashboard with discovered devices. You click "import," and your inventory is there. The MAC-to-IP associations are even updated dynamically, so you don't have to worry if your DHCP assigns a new IP.

3. Clean, Fast UI
The React front end is snappy and clean. It has a dark mode that actually looks good, and the status cards for each device are easy to read at a glance. It feels like a proper product, not just a hacky side project.

4. Docker Deployment
One command to bring it up, and it's done. It runs on a tiny footprint (a few hundred MB RAM), so it won't compete with your other services.

How to Try It

Getting started is incredibly quick. You need Docker and Docker Compose.

  1. Clone the repo or just create a docker-compose.yml file.
  2. Point the config at your network interface and subnet.
  3. Run docker compose up -d.
  4. Access the dashboard on port 8090 (default) and start adding devices.

The official README has a full walkthrough, but if you've ever run a containerized app, you'll have this up and running in less than five minutes. There's no need for a separate database or Redis; it uses a local BoltDB file, which keeps things even simpler.

If you're not on the latest OS, just grab the pre-built binaries from the Releases page, but seriously, Docker is the way to go.

Final Thoughts

UpSnap is one of those projects that feels obvious to me after the fact. If you run a homelab, a small office network, or just have a few machines you want to remote into, this is a genuinely useful tool. It’s not trying to be a full monitoring suite; it just does its job really well, and it does make me wonder why I spent so long waking up my gaming PC with wakeonlan commands from the terminal.

You could easily combine this with a VPN or a reverse proxy to manage your machines from anywhere, and the scheduling feature alone is worth the install. If you're thinking about automating your home infrastructure or just want a clean way to power things on and off, give it a shot.


Found this helpful? Follow @githubprojects on Twitter for more dev tools and open-source projects.

Back to Projects
Project ID: 74e71074-6d9f-4e0f-a03f-5cd510f545a4Last updated: August 5, 2026 at 02:44 AM