Skip to content

Add SkyBro - #5835

Merged
nmfretz merged 6 commits into
getumbrel:masterfrom
xDeeKay:add-skybro-app
Jul 20, 2026
Merged

Add SkyBro#5835
nmfretz merged 6 commits into
getumbrel:masterfrom
xDeeKay:add-skybro-app

Conversation

@xDeeKay

@xDeeKay xDeeKay commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Type

New app

App

App ID: skybro
Upstream project: https://github.com/xDeeKay/SkyBro
Version: 1.5.6

Summary

Adds SkyBro, a real-time sky tracker: live aircraft (OpenSky Network ADS-B data), ISS/Hubble/Tiangong satellite pass alerts (n2yo.com), hyperlocal weather (Open-Meteo), and a full astronomy planner (planets, 110 Messier objects, meteor showers, moon phase, Bortle sky quality) via the local ephem library.
Sends push alerts via Pushover and/or Discord when a plane enters a configured radius/altitude window or a satellite pass is approaching.

Two-service app (tracker + web dashboard), no database beyond local SQLite, no required environment variables.
First-run browser onboarding detects an approximate home location from the browser's timezone, no SSH or manual config needed.
Every setting is configured through the in-app Settings page and hot-reloaded by the tracker, no container restart needed.
Containers run as a non-root user (UID/GID 1000).

Verification

Umbrel testing performed: fresh install and an in-place version update both tested through the actual Umbrel app lifecycle (install/uninstall via the Umbrel Apps UI, and a version bump deployed in place).
Verified main functionality end-to-end: live aircraft tracking, alert firing (Pushover + Discord, including photo attachment), satellite pass computation, weather/astronomy data, history logging with recorded flight paths, and settings persistence across restarts.
Also cross-browser/OS tested on Windows 11, iPadOS 17.7 (Safari), Android 12 (Chrome), and SteamOS 3.8 Desktop Mode (Firefox).

Environment tested:

  • Umbrel device (Raspberry Pi 5, Umbrel 1.7.3)
  • Local umbrelOS test environment
  • Not runtime tested

Architecture tested:

  • amd64
  • arm64

Known lint warnings or caveats: restart: unless-stopped is used instead of on-failure for both services, intentionally: the tracker is meant to run continuously 24/7, and unless-stopped ensures it comes back after a host reboot or an unexpected exit, not just an application-level failure.

npm run lint:apps -- skybro --check-images was run locally; the image.pullable check reported a fetch failure for both images from this test network, independently confirmed via docker pull, docker buildx imagetools inspect, and a raw curl replicating the linter's own registry API calls that both images are genuinely public and correctly multi-arch (linux/amd64 + linux/arm64).
The failure reproduces as a Node fetch() connection timeout specific to this network's route to Docker Hub's registry backend, not the images themselves.

Notes

No permissions, dependencies, or migrations. No default credentials (defaultUsername/defaultPassword are empty; no login of its own, protected only by Umbrel's own app_proxy auth at its default setting).

Screenshots and icon attached below.

icon 1 2 3

xDeeKay added 4 commits July 4, 2026 00:34
SkyBro is a real-time sky tracker: live aircraft (OpenSky), ISS/Hubble/
Tiangong satellite pass alerts (n2yo), weather (Open-Meteo), and a full
astronomy planner (ephem), with push alerts via Pushover and/or Discord.

Two-service app (tracker + dashboard), no database beyond local SQLite,
first-run browser onboarding with automatic location detection, no
required env vars, all configuration via the in-app Settings page.

Upstream repo: https://github.com/xDeeKay/SkyBro
Updates version, tagline, and pinned image digests to match the
latest release.
@xDeeKay
xDeeKay marked this pull request as ready for review July 4, 2026 10:00
@nmfretz

nmfretz commented Jul 20, 2026

Copy link
Copy Markdown
Member

Hey @xDeeKay, huge apologies for the wait here. I really appreciate your patience and all the care you put into both SkyBro and this submission. It’s a really lovely app!

I went ahead and made a few small maintainer-side updates to get everything finalized:

  • updated the package to SkyBro 1.5.7 and refreshed both image pins
  • aligned the container restart policies with Umbrel’s lifecycle defaults (on-failure), which still recovers the services after unexpected exits while Umbrel handles bringing installed apps back after a host reboot
  • added the final gallery metadata

Everything is working really well from an Umbrel packaging perspective. Thanks again for building this and for putting together such a thoughtful submission. Going live! 🚀

image

@nmfretz
nmfretz merged commit acff1dc into getumbrel:master Jul 20, 2026
1 check passed
@xDeeKay

xDeeKay commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

G'day @nmfretz, really appreciate you taking the time to review SkyBro and for the kind words! I went ahead and matched the restart: on-failure change in my own repo too, so both listings stay consistent going forward. Thanks again for getting this merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants