Mission Control for My Sky Cameras

I’ve started working on what might be my most overdue project - a central hub for all my Night Sky Pi cameras. Look, I know it’s not strictly necessary, but I’m so damn tired of having to SSH into each camera individually just to check if they’re alive or to grab the latest batch of star photos.

I’m calling it “Ground Control” (yes, because of the Bowie song - I’m that predictable). For the tech stack, I’ve gone with boring-but-reliable Spring Boot and Thymeleaf with Bootstrap for the frontend. Nothing cutting edge here - I could’ve gone with some fancy React setup, but honestly, I just want something that works without spending weeks tweaking CSS and fighting with JavaScript frameworks. These older tools let me throw together a functional UI in a fraction of the time, and for a purely personal project like this, that’s priority number one.

Here’s what I’m planning to build (so far):

  • A dashboard showing all my cameras at a glance - which ones are online, how many images they’ve captured, and basic system stats. Basically answering the eternal question of “is this thing even working?” without me having to trek outside with a laptop.

  • Simple camera management - I want to be able to add/remove cameras and generate API keys that each Night Sky Pi can use to phone home. This way I can set everything up from my couch instead of editing config files on each device.

  • A night-by-night observation browser - sometimes I wake up and see it was super clear overnight but have no idea if my cameras caught anything good. This will let me quickly skim through the data from each night and decide if there’s anything worth pulling down for processing.

  • Bulk data transfers - probably the most important bit! I need a way to grab all those sweet, sweet astro images without manually copying files. Plus some cleanup functionality to prevent my cameras from filling up with months of raw data.

I’ve barely started coding, but I’ll share more as this takes shape. Hopefully by next month I’ll have something basic up and running!


↤ Previous Post
Next Post ↦