High-Level Project Summary
Our solution consists of a web application that will display trackable space debris. The application will use data about the debris to calculate the trajectories of debris and display them moving in real-time.It will Include a feature to mark an area and find the number of debris passing through the marked area within a timeframe specified by the user.It will offer an earth model to map as many debris as possible in addition to providing all the possible information about each object.
Link to Project "Demo"
Link to Final Project
Detailed Project Description
The website displays an interactive 3D model of earth with all the debris surrounding the planet mapped on the model.
How does the project work?
We used data from space-track and CelesTrackto get all the info we need about the objects using python, sgp4 and skyfiled.
this info is then stored in a sqlite database using SQLAlchemy.
We created the backend for the website using Flask framework and used three.js to create the earth model and map the objects to it.
When the application runs, data is then loaded from the database and send to the model to be mapped.
What benefits does the project have?
The website will provide the user with all the information needed about any satellite or debris whether its name, model, type, location, speed, altitude or route in real-time, visualized on an earth model with the ability to group objects by any of their properties mentioned above.
Data resources:
- Space-Track
- CelseTrack
Tools used:
- SGP4
- Skyfield
- SQLAlchemy
- Flask
Coding Languages:
- python
- javascript
Database:
- SQLite
Space Agency Data
We collected debris objects data from both space-track and CelesTrack, this data was then parsed and converted to readable format for our programming language.
After parsing the data and saving it, we used spg4 to return an (x,y,z) position relative to the Earth’s center in the Geocentric Celestial Reference System and the velocity of each object in (x,y,z) format.
In addition to getting the same info from the data like spg4, skyfield provides us with longitude, latitude and altitude of the objects.
The results from these two libraries is then mapped to an earth like 3D model.
Hackathon Journey
The experience so far has been great for every member in the team.
We have learned a lot about:
- Proposals and presentations and how important it is to present our application.
- Files processing using python
- The resources to obtain any data about satellites and space in general
- Storing data in databases
- Communication between backend and frontend in web apps
- Using three.js to create 3D models in web applications
We were inspired to choose this challenge because we were gathered by our shared interest in space.
The most difficult setback was to find a way to integrate three.js models with flask but we find a away to temporary handle this but we as a team will definitely work that out soon.
References
Data from CelesTrak, https://celestrak.com/
Data from Space-Track, https://www.space-track.org
Data parsing using python, https://www.python.org/
We used sgp4 and skyfield to get all possible info about the objects we parsed from the resources.
SGP4, https://pypi.org/project/sgp4/
SKYFIELD, https://rhodesmill.org/skyfield/
Tags
#space , #data ,#python, #web, #flask ,#earth
Global Judging
This project has been submitted for consideration during the Judging process.

