High-Level Project Summary
Voyagers: ISS Tracker is a web app that allows the user to track the position of the space station in real time, showing a 3D model of the ISS and the Earth. It aims to give the user a good experience while tracking the ISS, and also to open source the code, so others can contribute to it.
Link to Final Project
Link to Project "Demo"
Detailed Project Description
Demo
https://voyagers-iss-tracker.netlify.app/
What does it do?
Voyagers: ISS Tracker is a web app that allows the user to track the position of the space station in real time, showing a 3D model of the ISS and the Earth.
The first thing that shows when you open the page is a view of the Earth in the back with a model of the ISS centered in front at a bigger scale than the real one, so it is easier to spot it.
In the top left corner there is a menu that allows us to:
- Follow the station: when it is ON it follows the ISS while it moves around the globe. When it is OFF, it allows the user to freely move the earth around.
- Model: choose between different models of the space station.
- Real size: Shows the real size of the ISS.
- Time slider: allows the user to choose between a 48hs period, to see where the ISS was or where it is going to be.
- Reset date: reset the time slider to the present.
How does it work?
Calculating the ISS or any satellite's location is no easy task. Luckily, scientists developed an algorithm called SGP4, that can calculate the position of an element orbiting around the Earth, only with the help of a TLE.
Okay, but what exactly is a TLE?
Wikipedia says: A two-line element set (TLE) is a data format encoding a list of orbital elements of an Earth-orbiting object for a given point in time, the epoch. Using a suitable prediction formula, the state (position and velocity) at any point in the past or future can be estimated to some accuracy
Basically, a TLE is a set of two lines of text that contains a lot of information about a satellite, which is used to calculate its present or past position. It is important to note that an outdated TLE can generate errors in the calculations we make. So we must use recently generated TLEs, in order to make an accurate prediction.
How we track the ISS
We use Satellite.js, a JavaScript library that, given a TLE of the satellite, calculates its current or past position. We get the TLE from this page, called "Where the ISS is at?". Then we update the code every day with the new TLE.
In order to show the planet and the ISS in a 3D model, we use another tool called Web Worldwind, which is an open-source library developed by NASA.
The rest of the web application is made with other open source tools called Next.js and ChakraUI.
Why is it important?
One of our top priorities is to keep the app user friendly. We want everyone to be able to know where the ISS is and if they are seeing it in the sky, with just some simple clicks.
Furthermore, it is an open code app, allowing anyone that it interested to see how it works and use the code on their own project
Future versions
We would like to add extra features to the app. Some of our ideas are:
- Add a bigger time section to choose the date that shows the ISS location.
- Show the orbit of the space station in the last lap and the future one.
- Show the zone of the earth where the ISS is visible.
- Allow to choose an specific location of the earth and see when the next sightings of the ISS are going to be.
- Add previous models of the space stations to show.
- Add a visualizer of the current direction of the solar panels of the ISS.
- Include a Spanish version.
Images


Space Agency Data
We used 3D imagery data from NASA WorldWind library: https://worldwind.arc.nasa.gov/
Also, we used a 3D model of the station we found at https://solarsystem.nasa.gov/resources/2378/international-space-station-3d-model/
Hackathon Journey
This is our first time working together in a project like this, and we learnt a lot in this exprecience, especially about ourselves as a group.
We chose this project because it really captivated our attention. We were really interested in finding new libraries and working with NASA material, in addition to using what we were learning in our studies.
In addition, we learnt how to use these new libraries, what a TLE is and how to make a 3d model. Most importantly we learnt about the process of making our own application and managing our own project.
References
WorldWind library: https://worldwind.arc.nasa.gov/
Our project is heavily inspired by the Worldwind SpaceBirds App: https://github.com/WorldWindLabs/SpaceBirds
Our design was also inspired by another ISS tracker (which is Open Source): https://www.whereisthespacestation.com/
We used the following libraries:
Next.js: https://nextjs.org/
ChakraUI: https://chakra-ui.com/
Tags
#3D, #ISS, #WorldWind

