Skip to Content
DocumentationFirst-Party AppsπŸš€ Spatial Time Machine

πŸš€ Spatial Time Machine

Point your phone and look back in time. A phone-first augmented-reality app that overlays nearby places, history, weather, and more onto your camera view.

Install & availability

Available now. Install from the Companion Hub App Store. Verified on the test fleet: the published image pulls, starts, serves its web UI, and survives a container restart.

Hub App StoreSearch Spatial Time Machine β†’ Install
Container imageghcr.io/companionintelligence/ci-webxr-time-machine:latest (public)
Web UI port5173
Architecturelinux/amd64 and linux/arm64 (multi-arch)
StatelessHistory stored client-side in the browser (IndexedDB)

Overview

Spatial Time Machine is a phone-first augmented-reality experience. Holding up your phone, it fuses the camera feed with your device’s compass and motion sensors to anchor information about your surroundings β€” nearby points of interest, historical context, current weather, terrain, and even overhead aircraft β€” onto the real world. WebXR is used opportunistically where the browser supports it, but a headset is not required.

Data comes from public open APIs. Your visit history stays on your device in IndexedDB, and you can export it as a GPX track.

Camera, GPS, and motion sensors require a secure context (HTTPS). Open Spatial Time Machine via the Hub’s Traefik HTTPS hostname (e.g. https://time-machine.<your-hub>.ci.computer) and AR works. Opening it directly over http://<hub-ip>:5173 shows β€œAR needs a secure connection” β€” this is browser security policy by design, not a bug.

Current capabilities

What Spatial Time Machine does today, as shipped:

  • Phone AR via camera + compass/motion sensor fusion to place overlays on the world
  • Opportunistic WebXR where the browser supports it (no headset required)
  • Live data from public APIs: nearby POIs (OSM OverpassΒ ), articles (WikipediaΒ ), weather (Open-MeteoΒ ), elevation (OpenTopoDataΒ ), and aircraft (OpenSkyΒ )
  • Local history in IndexedDB with GPX export
  • iOS motion permission prompt on first tap

Desktop browsers render the UI but cannot start an AR session (no camera/motion fusion).

The OpenSky aircraft feed may be blocked by CORS depending on the network and the API’s current policy. When that happens, aircraft overlays simply don’t appear β€” this is an upstream/API limitation, not a fault in your Hub.

Use Cases

  • Hold up your phone outdoors and see nearby landmarks, their Wikipedia context, and the weather overlaid on the scene
  • Identify terrain and elevation around you
  • Spot aircraft passing overhead (network permitting)
  • Build a local, private log of the places you’ve explored and export it as GPX

Supported Platforms

PlatformModeNotes
iOS / Android phoneAR (camera + sensors)Requires HTTPS; iOS prompts for motion permission
Desktop browserUI onlyRenders the interface; cannot start AR
WebXR headsetOpportunisticUsed where supported, not required

Setup

Install from Hub

Search for Spatial Time Machine in the Hub app store and install.

Open over HTTPS

On your phone, open the Hub’s HTTPS hostname for the app (the Traefik route, e.g. https://time-machine.<your-hub>.ci.computer). A secure context is required for camera, GPS, and motion access.

Grant permissions

Tap to start AR. On iOS you’ll be prompted to allow motion access on first tap. Allow camera and location when asked.

Usage

Starting AR

Open the app over HTTPS on your phone and tap to begin. Point your phone at your surroundings; overlays anchor to real-world directions using the compass and motion sensors.

Exporting Your History

Your explored locations are saved locally in IndexedDB. Use the export option to download your history as a GPX track for use in mapping tools.

Troubleshooting

β€œAR needs a secure connection” You opened the app over plain HTTP. Camera, GPS, and motion require HTTPS β€” use the Hub’s Traefik HTTPS hostname for the app.

Desktop won’t start AR Desktop browsers render the UI but can’t do camera/motion fusion. Use a phone.

iOS isn’t tracking motion iOS requires an explicit motion-permission grant on first tap. Reload and allow it when prompted.

No aircraft overlays The OpenSky feed may be CORS-blocked on your network or by the API. Other data sources are unaffected.

Last updated on