Inspiration

More than 18,000 tracked objects are orbiting Earth right now. Scientists warn about the Kessler syndrome: one crash makes debris that causes more crashes. I wanted everyone to be able to see that live, in a browser.

What it does

  • A live 3D globe of all ~18,600 objects, with day and night and Earth's shadow.
  • Click any satellite to follow it and see its height, speed, closest neighbour and when you can see it from where you are.
  • Above me shows what's over your head right now.
  • Smash a satellite and watch the debris spread across Earth, hitting other satellites in a chain reaction.
  • Real disasters: light up what's left of real debris events, like the 2007 Fengyun-1C missile test.

How I built it

  • Data: a GitHub Action downloads fresh orbit data from CelesTrak every 6 hours.
  • Orbit math: satellite.js runs SGP4 (the US Space Force's orbit model) to place every object, in a background thread so the page stays smooth.
  • Graphics: three.js plus a custom GPU shader draws all 18,600 objects at once.
  • Crash physics: each piece of debris follows real gravity, $$\ddot{\vec r} = -\frac{\mu \vec r}{|\vec r|^3}$$ and burns up if it falls below 120 km.
  • Hosting: a free static site on GitHub Pages, with no server and no sign-up.

Challenges we ran into

Keeping 18,600 objects moving smoothly, making the camera follow a crash so you can see it, and calculating orbit heights correctly because Earth isn't a perfect sphere.

Accomplishments that we're proud of

  • All the objects move smoothly, with no server.
  • It tells you exactly when and where to look to see the ISS with your own eyes.
  • Built solo in my first hackathon, from just an idea to a working web app.

What we learned

Orbital mechanics, GPU shaders, and how serious the space-debris problem really is.

What's next for Skyward

Close-approach warnings between real satellites, and alerts when the ISS flies over you.

Built With

Share this project:

Updates

Submission history