Note
Not finished software. A home screen I made for my own TV, shared as is. Expect to tweak it, with some coding know-how or a coding agent like Claude Code, and use it at your own risk.
- On the TV: turn on developer options, install the free Downloader app from the Play Store and let it install apps.
- In Downloader, type
staiola.studio/android-tv, press Go and install. - Open Ostromo and pick your apps, airport and power prices in SETUP.
Only the TV and its remote, no computer. Step by step: the install guide.
A home screen for Android TV and Google TV that looks like the ship computers in Alien and Aliens: blue vector lines on black, a worn picture tube, and a boot card that plots itself on. It launches your streaming apps and HDMI inputs, and around them it shows live flights around a big airport near you, today's electricity prices, webcams at research stations, NTS radio, teletext and a sentry gun.
More about it, with video: staiola.studio/apps/ostromo. It started on LG TVs: Ostromo for LG.
Version 0.11.0 is a beta: channel tiles can open any app on the TV (Jellyfin, Moonlight, Kodi …), and Ostromo now updates itself from the home screen. It runs on TVs and boxes with Android TV or Google TV (TCL, Sony, Philips, Hisense, Chromecast with Google TV, Google TV Streamer, Nvidia Shield …), Android 8 or newer. Tested on the Google TV emulator and a Pixel so far, not yet on a real TV: tell me how it runs on yours. It's free.
What's in it:
- Radar: live air traffic around one of 14 airports: Copenhagen, Malmö, Stockholm, Oslo, Berlin, Paris, London, New York, Washington, Sydney, Melbourne, Brisbane, Adelaide or Perth, with departure and arrival boards, routes and altitudes.
- Power: today's and tomorrow's electricity price every quarter of an hour, and the cheapest three hours. Denmark, Sweden, Norway, Germany, London (Octopus Agile), New York City and eastern Australia (the NEM).
- Teletext: DR (Denmark), SVT (Sweden) or ARD (Germany), live.
- Comms (NTS Live radio), Outposts (polar and deep-sea webcams), Sentry (a small defence game), and DR TV (Danish live TV, Denmark only).
Everything is in this repository, under the MIT licence: change it, share it, build on it.
| Folder | What's in it |
|---|---|
nostromo/ |
The app itself: plain JavaScript drawing into a canvas, with a WebGL pass for the CRT look. One file per screen (home.js, radar.js, power.js, sentry.js …). The same code runs on LG TVs. |
android-tv/ |
The Android TV app: a full-screen WebView around nostromo/, copied in at build time. The feeds the app can't reach directly (flights, Danish and New York power prices, webcams, DR teletext) are answered in Kotlin, and Launcher.kt lists and opens the TV's apps. |
nostromo-service/ |
The same feeds in Node, for running the app in a browser on your computer (dev-server.js). |
scripts/ |
make-android-key.sh makes your own signing key for release builds. |
Run it in a browser (needs Node.js), then open http://localhost:8081. Arrow keys, Enter and Esc stand in for the remote.
node nostromo-service/dev-server.js 8081Build the app (needs Java 17 and the Android SDK, e.g. from Android Studio; open android-tv/ in
Android Studio, or):
cd android-tv
./gradlew installDebuginstallDebug puts it on a TV or emulator connected with adb. A debug build can be inspected from Chrome
at chrome://inspect. For a release build of your own, make a key with scripts/make-android-key.sh, then
./gradlew assembleRelease.
Start with your own setup instead of SETUP: copy nostromo/preset.example.js to nostromo/preset.js
and edit it (debug builds include it, release builds leave it out).
Places to start tweaking:
- Apps a tile can launch:
nostromo/settings.js(they're found by name on Android). - Airports:
nostromo/airports.js. The coastlines, lakes and rivers innostromo/maps.jsare clipped from Natural Earth. - Power prices: the regions in
nostromo/settings.js, and how each source is read innostromo/power.js. - The CRT look:
nostromo/fx.js.
Pointing Claude Code at this repository and describing what you want changed works well. Most of Ostromo was made that way.
- On GitHub: Watch → Custom → Releases on this repository and you get a notice when there is something to install.
- Found a problem? Open an issue and say which TV or box you have.
- Like it? You can support Ostromo on Ko-fi.
- Fonts: Michroma and Share Tech Mono (SIL Open Font License), Bedstead (CC0). Licences in
nostromo/fonts/. - Video playback: hls.js (Apache 2.0), in
nostromo/lib/. - Map outlines: Natural Earth (public domain).
- Data: flights from adsb.fi (personal, non-commercial use) and adsbdb; electricity prices from Energinet's Energi Data Service, elprisetjustnu.se, hvakosterstrommen.no, Octopus Energy, NYISO and AEMO; teletext from DR, SVT (via texttv.nu) and ARD Text; radio from NTS; live TV from DR; webcams from the US Antarctic Program, the Australian Antarctic Division, the Norwegian Polar Institute, Øresundsbron, the Gemini Observatory and the Ocean Observatories Initiative. Their terms apply to their data.
Ostromo is a fan's homage to the screens in Alien (1979), Aliens (1986) and WarGames (1983), and has nothing to do with the people who made them.


