Project
Solar Explorer
Interactive explorer of a scale model of the solar system, from the Sun to Voyager 1.
Goal
An educational, frontend-only web app that lets you explore a procedurally-rendered scale model of the solar system. Navigation runs from the Sun all the way to Voyager 1, and the interface is bilingual (English/Spanish). The project demonstrates how to build an interactive, visually engaging astronomy experience without relying on pre-rendered images: every celestial body and spacecraft is drawn in real time on canvas.
How it works
- Linear mode Vertical scrolling view that travels across the solar system at scale, with distance tracking and contextual facts for each body as it appears.
- Ellipse mode Orbital map showing the bodies moving in real time, with adjustable speed (1×/2×/5×) to observe celestial mechanics.
- Mission mode Replays historical spacecraft trajectories on the orbital map, recreating their journeys across the solar system.
- Procedural rendering All celestial bodies and spacecraft are drawn on canvas with Phaser 4 — no pre-rendered images. Elements are clickable and surface educational information.
Architecture
The repository is a monorepo with two packages: the frontend (Astro + Phaser application) and the infrastructure (AWS CDK hosting stack). Development follows test-driven practices with Vitest and jsdom and a strict separation of concerns. Deployment is automated through GitHub Actions, which runs the tests before building and publishing to S3 served by CloudFront.
AWS services
- S3 Hosting for the static site generated by Astro
- CloudFront CDN for global content distribution
- ACM TLS certificate for HTTPS
- Route 53 DNS and domain routing
- CloudFormation / CDK Infrastructure as code in TypeScript
- GitHub Actions CI/CD: runs tests, build, and automated deployment
Stack