Skip to content

About

Photoreal real-time solar system explorer for iPhone and Android — Three.js + WebGL in a native shell, with NASA Blue Marble, real ring systems, IBL, and ACES Filmic tonemapping

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

46 Commits

Folders and files

Repository files navigation

RealTime Space

A photoreal real-time solar system explorer.

Fly through the entire solar system on your phone — every planet, moon, ring system, and the Sun rendered with real NASA imagery, true-3D atmospheric scattering, and cinematic post-processing.

Download on the App Store Get it on Google Play Downloads, both stores

Download RealTime Space on iPhone or Android — free for 60 days, then one $1.99 unlock keeps the universe forever.

License

Cockpit view approaching Saturn Cockpit view of Jupiter Ship flying through the solar system Ship near Mars

In one sentence: RealTime Space is a phone app that lets you fly a ship through a 3D model of the solar system, rendered live in WebGL inside a native iOS or Android shell. It is shipped and live on both the App Store and Google Play.

This repo holds both platforms of RealTime Space, cleanly separated:

📱 iOS

SwiftUI + WKWebView wrapping a Three.js/WebGL solar system renderer. Full source, Xcode project, and textures live in ios/.

Status: ✅ Live on the App Store. Version 1.3.2 (build 23) in the Xcode project.

🤖 Android

The Android port — a WebView shell around the same renderer, with all web assets bundled. Source in android/.

Status: ✅ Live on Google Play. Version 1.5 (versionCode 9) in android/app/build.gradle.kts.

🛠️ What I built (Matt Macosko)

Upstream, not mine: three.js (r150, bundled at ios/textures/lib/three.bundle.js) does the WebGL work. Planet imagery comes from NASA and other texture sets listed in CREDITS.md and THIRD_PARTY_NOTICES.md. Live data comes from wheretheiss.at and NASA's NeoWs API.

🚀 Building it yourself

  • iOS: open ios/RealTime Fidget.xcodeproj in Xcode (the project still uses its old working name, "RealTime Fidget"). The deployment target is iOS 26.0, so you need an Xcode with the iOS 26 SDK. ios/Products.storekit lets you test the unlock locally without App Store Connect.
  • Android: from android/, run ./gradlew assembleDebug (JDK 17, compileSdk 36, minSdk 26). A release build reads signing keys from android/keystore.properties, which is not in the repo, so only debug builds work out of the box.
  • No build step for the web renderer: the HTML, JS and textures are bundled into each app as plain files.

⚠️ Known limits

  • The iOS and Android web assets are two separate copies (ios/ and android/app/src/main/assets/web/), kept in step by hand. Several files (for example main.js, Planet.js, index.html) currently differ between them, so the two apps are not guaranteed to be identical.
  • The live-data panel needs a network connection. Offline it falls back to the last good data or a "no signal" message.
  • There are no meaningful automated tests; the Xcode test targets are the default templates.

Links

License

MIT, see LICENSE. Bundled textures keep their own licenses, listed in THIRD_PARTY_NOTICES.md.

About

Photoreal real-time solar system explorer for iPhone and Android — Three.js + WebGL in a native shell, with NASA Blue Marble, real ring systems, IBL, and ACES Filmic tonemapping

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages