Work

Solar System Simulation - NASA space apps

NASA Space Apps
Astrophysics
3D Graphics
Web Development

An interactive orrery web app designed to educate users about planets, Near-Earth Asteroids, and Potentially Hazardous Asteroids using real-time NASA data and dynamic 3D visualization.

Tools & Technologies

ReactJS ReactJS
Typescript Typescript
Three JS Three JS
Solid JS Solid JS

Collaborators

Loading profiles...
Interactive orrery displaying planets and near-Earth objects with detailed orbital paths.

Built this interactive orrery for the NASA Space Apps 2024 Hackathon with Riyana. Actually had a lot of fun with this one - turns out visualizing orbital mechanics in 3D is really satisfying when it finally works. Shows planets, Near-Earth Asteroids (NEAs), Near-Earth Comets (NECs), and Potentially Hazardous Asteroids (PHAs) using real NASA data.

Explore the Orrery Web App Here!


Space Apps 2024 Logo


Interactive orrery web app showing real-time orbital simulation of planets and asteroids

Key Features

  1. Dynamic Visualization

    • Displays celestial bodies and their orbits in real time.
    • Includes accurate Keplerian orbital parameters sourced from NASA databases.
    • Tracks planetary orbits and NEO trajectories dynamically.
  2. User Interaction

    • Zoom and pan controls for a customizable viewing experience.
    • Toggles for turning labels and orbital paths on or off.
    • Speed controls to simulate time-lapse orbital movements.
  3. Educational Value

    • Informative labels for celestial objects like planets, NEAs, NECs, and PHAs.
    • Simplifies complex orbital mechanics for a general audience.
    • Encourages space exploration and awareness about potentially hazardous objects.

Technical Implementation

  • Frontend: Built with React.js and integrated with Three.js for 3D rendering.
  • Backend: Leveraged NASA’s public APIs and datasets to fetch orbital parameters and trajectory data.
  • Deployment: Hosted on Vercel for seamless access and optimal performance.

What I Learned

First time working with Keplerian orbital parameters and Three.js 3D rendering. Converting NASA’s orbital data into actual visual trajectories was trickier than expected - lots of coordinate system conversions and getting the scale right so you can actually see both planets and tiny asteroids.

Hackathon time constraints meant we had to move fast, but the end result actually works pretty well. Kind of want to come back and add more features someday.

Check it out live →