Context
As part of a JavaScript course at IUT2 of Grenoble Alpes University, we were asked to create a JavaScript mini-project to interact with an API and save certain searches as favorites, with the project structured in an Object-Oriented Model (MVC) format.
Implementation
I decided to made this basic satellite coordinates visualiser (available here), based on 3 endpoints of 2 APIs :
- Celestrak, which is even used by the second API, but is more rate limited.
- TLE-API, which is a simple wrapper of Celestrak, with fewer limitation but that doesn’t allow bulk querying (data is paginated).
The tool allows viewing the evolution of satellite coordinates at accelerated speed (), with satellites selectable through a simple search bar with options depending on the API used.

Technical Details
The code is written in pure vanilla JavaScript, without any libraries. The JavaScript is separated into three parts following the MVC pattern: one for the form, one for the canvas where satellites are displayed, and one for the favorites system.
Ignoring many technical details, it’s worth noting the use of a numerical equation solving system that extracts coordinates at time of a satellite from its TLE, a set of physical parameters describing the satellite’s elliptical motion. The implementation is based on this paper by Mr. René Schwarz.
The source code is available on GitHub: github.com/bxbyte/satellite-viewer