This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
Most astronomy and satellite tracking software is designed to be consumed exclusively through a screen: complex orbital graphs, two-dimensional ground tracks, and dense ephemeris tables keep users tethered to their desks.
I built SkyQuest with the opposite objective: to bridge digital astrodynamics and the physical world by motivating people to step outdoors, look up, and visually track operational spacecraft crossing the night sky.
SkyQuest is an outdoor astronomy mission platform integrated directly into the open-source God's Eye View 3D geospatial Earth engine. It translates complex orbital mechanics and real-time ephemeris data into structured, actionable outdoor observing missions calibrated to an observer's exact terrestrial coordinates.
Core Architecture and Features
- Observer Horizon Calibration: Instant coordinate detection via browser geolocation with graceful manual fallback and built-in worldwide urban presets.
- 48-Hour Orbit Propagation: Continuous forward scanning for high-interest visible spacecraft, including the International Space Station (ISS), Tiangong Space Station, Hubble Space Telescope, Envisat, Terra, Aqua, NOAA meteorological satellites, and BlueBird 1.
- Astronomical Visibility and Umbral Shadow Engine: A rigorous physics layer that separates geometric pass existence from visual observability. It calculates topocentric solar depression angles (civil, nautical, and astronomical twilight), observer elevation, and whether the satellite is in direct sunlight or eclipsed within Earth's umbral shadow cylinder.
- Atmospheric Weather Integration: Live cloud cover percentage and atmospheric visibility forecasts fetched via Open-Meteo to prevent wasted field attempts during overcast conditions.
- 3D Geospatial Orbital Trajectory: Full 3D orbital arc visualization, sub-satellite ground paths, observer ground markers, and culmination line-of-sight vectors rendered via CesiumJS.
- Night-Vision Preservation Mode: A dedicated monochromatic deep-crimson interface theme (650 nm equivalent) engineered to prevent pupil constriction and preserve human rhodopsin adaptation under dark skies.
- Live Acquisition-of-Signal (AOS) HUD: Real-time countdown timers, cardinal azimuth compass bearings, and target elevation angles.
- Amateur Astronomy Journal: Local, persistent logging of field observation attempts, cloud coverage notes, visual magnitude estimates, and sighting confirmations, with instantaneous RFC-4180 CSV and JSON data export.
- Pedagogical AI Mission Briefings: Structured field briefings combining factual astrodynamics with contextual spaceflight history generated by open-weight AI models.
Demo
- Source Code Repository: https://github.com/Crytic35/SkyQuest
- Local Reproduction:
git clone https://github.com/Crytic35/SkyQuest.git
cd SkyQuest
npm install
npm run dev
-
Workflow Overview:
- Launch the application and click the star flare icon in the top navigation bar (or press
Q) to open the SkyQuest Mission Console. - Set your observer coordinates or click Detect GPS.
- Select an upcoming visible pass from the mission catalog.
- Engage Red-Light Mode before heading outside to protect optical dark adaptation.
- Follow the real-time AOS countdown and compass bearings overhead, then record your confirmed sighting directly into your Observation Journal.
- Launch the application and click the star flare icon in the top navigation bar (or press
Code
🌐 God's Eye View
A spy-satellite simulator in your browser — then you realize the sources are public and the data is real.
Photorealistic 3D globe. Live aircraft, ships, satellites, earthquakes, traffic, and public cameras. Hands-free voice control powered by a realtime AI agent.
No place left behind.
🏆 Reached #1 on GitHub Trending, daily and weekly · August 2026
#8 Product of the Day · Hunted by Chris Messina, creator of the hashtag
“pretty cool” — Brendan Eich, creator of JavaScript and co-founder of Mozilla and Brave · Featured on Pinokio
⚡ Start without API keys. Install with Pinokio or run locally from the terminal. Add optional keys inside the app. → Quick Start
SkyQuest is distributed under the Apache-2.0 license at Crytic35/SkyQuest.
Key Implementation Modules
-
src/skyquest/visibilityEngine.js: Physics engine determining geocentric Sun vectors, solar depression, satellite eclipse geometry, and visual magnitude estimates. -
src/skyquest/passPredictor.js: SGP4 propagator scanning 48-hour forward windows with step-based horizon crossing and topocentric azimuth/elevation derivation. -
src/skyquest/missionGenerator.js: Assembles structured field briefings with strict factual boundaries. -
src/skyquest/aiProvider.js: Open-weight model adapter featuring strict schema validation and a deterministic fallback pipeline. -
src/skyquest/globeOverlay.js: 3D geospatial rendering of orbits, ground tracks, and observer vectors on CesiumJS. -
src/skyquest/observationJournal.js: Local client-side storage and telemetry export engine.
How I Built It
Open-Source AI Architecture: Gemma
SkyQuest leverages Google's open-weight Gemma model family (specifically gemma2:9b and gemma2:2b) running locally via Ollama or any OpenAI-compatible local inference runtime.
Grounded Dual-Engine System
When applying generative AI to scientific and observational contexts, hallucination is a critical vulnerability. A language model must never invent an incorrect pass time, an inaccurate azimuth, or a fictitious elevation angle.
To guarantee precision, SkyQuest separates calculation from communication:
- Deterministic Astrodynamics Layer: Exact orbital propagation, solar ephemeris calculations, and topocentric coordinates are computed strictly through validated mathematical models (SGP4 and USNO solar algorithms).
-
Gemma Synthesis Layer: The verified numerical parameters (pass start time, culmination elevation, duration, visual magnitude, and local cloud cover) are passed into Gemma with a rigid JSON schema. Gemma generates:
- Concise contextual background explaining the engineering and scientific mission of the satellite.
- Accessible observing instructions adapted to the observer's experience level (e.g., beginner vs. seasoned amateur astronomer).
- Post-observation analytical prompts to foster deeper comprehension of orbital mechanics.
- Verification and Fallback Resilience: Every AI response is validated against strict structural constraints. Critical numerical values are immutable and directly inherited from the physics engine. Furthermore, if the local inference runtime is offline, SkyQuest transitions seamlessly to its internal deterministic briefing engine with zero latency penalty and zero user disruption.
Why Does Open Innovation Matter?
Open innovation is fundamental to real-world astronomical tooling:
- Off-Grid Independence in Remote Dark-Sky Locations: Optimal stargazing occurs in state parks, rural wilderness, and dark-sky reserves where cellular reception is often absent. Proprietary cloud APIs fail in disconnected environments. Open-weight models such as Gemma execute entirely on-device, requiring no external network connectivity, incurring zero API fees, and operating free from vendor lock-in.
- Data Privacy and Location Sovereignty: Exact observer coordinates—whether a private residence or a secluded field station—remain strictly local and are never transmitted to external cloud services.
- Open Science Stack: By uniting open orbital data from CelesTrak, meteorological data from Open-Meteo, geographic reference data from OpenStreetMap, and open-weight models from Google Gemma, SkyQuest exemplifies how open-source technology can democratize real-world scientific exploration.
My Agent Session
This project was built and audited using agentic pair-programming workflows with Google Antigravity and DevRelay tooling. The development process encompassed rigorous mathematical testing, CesiumJS canvas optimization, strict package boundary audits across 120+ export groups, and cross-platform build validation.
Prize Categories
- Gemma: Utilizing Google's open-weight models for local, verifiable scientific education, outdoor mission synthesis, and grounded astronomical briefings.
Team Submissions
This project was conceived, implemented, and submitted independently by @Crytic35.


Top comments (0)