gitmyhub

UpSnap

Go ★ 5.8k updated 4d ago

A simple wake on lan web app written with SvelteKit, Go and PocketBase.

UpSnap is a self-hosted web dashboard for waking up, monitoring, and shutting down computers and devices on your local network using Wake on LAN, all from a single web page with user permission controls.

GoDockersetup: easycomplexity 2/5

UpSnap is a self-hosted web application for waking up computers and other devices on your local network from a single dashboard. It uses a network feature called Wake on LAN, which lets you send a special signal to a sleeping machine to turn it on remotely. Instead of needing command-line tools or memorizing device addresses, UpSnap gives you a web page where all your registered devices appear as buttons.

Beyond the basic wake-up function, you can schedule automated events using cron expressions (a standard way to describe repeating time schedules), ping specific network ports to check if a device is responding, scan your network to discover devices automatically using a tool called nmap, and send shutdown commands to devices that support it. Each user account can have different permissions per device, so an admin can control who is allowed to wake, edit, or shut down any given machine.

The application comes in Docker images for common hardware types including standard x86 servers, Raspberry Pi, and other ARM-based devices. It can also be installed as a standalone binary or through the AUR package manager on Arch Linux. The web interface supports 21 languages and includes 35 visual themes.

One important caution the README flags clearly: the shutdown feature works by running a shell command, which carries real security risk if the app is exposed to the public internet. The project recommends keeping UpSnap behind a VPN rather than making it publicly accessible.

UpSnap is free and open source. If you encounter it being sold anywhere, that is a scam.

Where it fits