Our inspiration began with the theme of the hackathon, space! We wanted to find an API that had some sort of space theme, so when we initially found an API that would find SpaceX’s Starlink satellite locations.

What it does

Satellite Tracker gets the location of the user based on the user’s IP address. It then displays an image from google maps at their location showing the satellites that are overhead. The user can specify the dataset of satellites to use and can change the scale of the image, all the way from the town they are into the state they are in.

How we built it

We built it in Java using VSCode’s liveshare extension, and with git for version control.

Challenges we ran into

When we used the initial satellite API, we found that it probably wouldn’t work for our project. The location of the satellites that it returned did not refresh with each call and the data was very old (over 6 hours!). This meant that we would need to find a new data set. We found the new API to get our data from, which allowed us to have the new location for each satellite each time we pulled data from the API. It also allowed us to greatly increase the number of satellites we could display from just SpaceX satellites to almost any in orbit that the API tracked (including starlinks!).

Accomplishments that we're proud of

We noticed that the International space station was going to go very close overhead. We decided to take our program outdoors and track it as it passed overhead, allowing us to actually see it in the sky.

What we learned

We learned how to use git for version control. We also learned a lot about APIs and parsing their data, as either a JSON or just a plain image. We also both had not used Java in two years, so we were able to refresh ourselves on it.

What's next for Satellite Tracker

With the dropping cost of spaceflight, the number of satellites in orbit is increasing exponentially. Satellite Tracker can be used to track those satellites for a number of uses. Astronomers could know when a satellite that has a high reflectivity is going to go above. Hobbyists could use it to know when to communicate with and download data from satellites. Having a program that has a current and accurate dataset containing all the satellites nearby has so many uses.

Built With

  • getgeoapi
  • google-maps-staticimage-api
  • gson
  • java
  • open-elevation-api
Share this project: