SatTrack
- 8 Devlogs
- 16 Total hours
A 3D Satellite Tracker.
A 3D Satellite Tracker.
The first version of SatTrack has now been deployed to github pages! I had to setup github actions for the first time to automate fetching TLE data and committing to the repo and publishing the site after. Thankfully this was quite simple and did not take all too long despite a couple failed deployments initially.
Anyways I am now going to ship the first version of the project and outline more information there. Thank you for reading and I hope you enjoy using my project.
Added a few polishing changes related to tracking, and now all the features are complete.
A couple things were added here, a HUD style display that shows some simple information relating to the satellite (location, altitude, period, classification, etc.,). I also modified tracking slightly so you can remove the bound and keep the overlay while still freely exploring.
I am going to ship this project very soon, i’ll try to get it done today but if I cant i’ll ship it tomorrow. All that is left is to change the TLE data from static to live (in respect of the api limits) and then just pushing to github pages.
Anyways, thank you again for reading and I hope you’ll enjoy my project.
Another day another feature added! This time I added a search function to automatically go to any satellite that is looked up.
I also added a couple quality of life changes, mostly regarding satellite paths and tracking. The satellite paths now only show if the satellite is actively being tracked, and now expand to a range 1h in the past (solid line) to 1h in the future (dashed line).
I also decided to make the paths blue to contrast with the green of the satellites.
Lastly I also added the option to zoom in-out while tracking and unlock button to unfocus the screen from the satellite.
From here on out most of the updates will be small as I intend to get this shipped rather soon since most of the features are already pretty much complete. Anyways thank you for reading and stay tuned for the next update/ship shortly.
A custom 3D model for the ISS has been added, alongside a basic satellite tracking implementation.
I decided that the site should have more life rather than just thousands of green dots, so I made the ISS easily identifyable by giving it a custom model. I want to expand this to more satellites, but I don’t think my pc will like thousands of 3d objects, so maybe only a few satellites will have it and others like the 11000+ starlink ones will not.
Also on that note I tried using a highly detailed ISS model and that turned out to be a really bad idea. Who could’ve guessed the integrated gpu on my laptop really does not like thousands of polygons being rendered at once.
Oh yeah I also added a basic satellite tracking mode where you can click a satellite and automatically follow its journey. Next I will probably add an overlay to give you information on that satellite.
Anyways, thank you for reading and I’ll post more updates shortly.
Another pretty big feature added in this devlog, you can now see every satellite in orbit!
I had a bit of trouble with this feature, and originally I tried to add the 3d dots and paths like the other satellites but this causes major performance issues with over 16000 satellites in orbit. I also tried offloading calculations to a web worker, but that also had some performance issues as well.
In the end I decided to resort to using the particles api that react-globe.gl has and it works exceptionally well, and even allows for a relatively quick refresh rate while still keeping the site relatively smooth.
Another update today! This time I added paths to each satellite so we can visualize the future positions of where a satellite will be, which can be accurate for a while based on how high up the satellite is.
I also added the CALSPHERE 1 and CALSPHERE 2 alongside the ISS in the demo to visualize multiple satellites.
I’m back to working on this project again, sorry for the delay in development. In this devlog I have added live tracking of the ISS to the globe by fetching the TLE data (which in simple terms is a multi line file that gives mathematical data relating to a satellites position, rotation, motion, and other relevant properties).
Thankfully I did not have to deal with most of that vector math and delegated it to the satellite.js library which gave the essential positions like latitude, longitude, and height.
Another great thing about TLE data is that it is fairly accurate for a while and can easily show live position updates by passing in the current time every second.
Anyways, I’ll end the rambling here with a picture of the the ISS on the globe (Side note: I did not realize just how fast the ISS is, it apparently travels 28000 km/h and it is very noticable over a few minutes).
Hello everybody! I have decided to start work on a new project called SatTrack, which, as the name implies, is a satellite tracker.
I have actually seen a couple satellite trackers created here, but they have all seem to have either been abandoned or deleted, which is a shame because those concepts had a really cool concept in my opinion.
Anyways, I added the 3d globe using react-globe.gl, and also used the example documentation to create a day/night ternimator. Unfortunately react-globe.gl does not support 3d terrain so I am considering switching to react-map-gl and maplibre.