Earth, Mars, and Beyond…

For this project, I used functional style JavaScript to consume information from various NASA APIs. To present the information, I designed a website that serves to pick our curiosity while paying tribute to the outstanding human achievements in space exploration.

Some of the project features are:

  • The use pure functions.
  • Supporting immutability with ImmutableJS.
  • Accessing, iterating over, and reshaping information from complex API responses.
  • Using ES6 constructs like const, arrow functions, and the new Array methods.
  • Using the async/await keywords where it make sense to escape callback hell.

Visit the GitHub repository here.

Visit the live website here.

The Earth section consumes from NASA’s EPIC API. EPIC stands for Earth Polychromatic Imaging Camera. The camera is onboard a deep-space weather satellite located roughly one million miles from Earth.

The Mars section consumes from NASA’s Mars Rover Photos API to retrieve photos sent by the Spirit, Opportunity, Curiosity, and Perseverance rovers from the Red Planet, as well as general information about each rover’s mission.

The Beyond section consumes from NASA’s APOD API. APOD stands for Astronomy Picture of the Day. In this section, you will find beautiful pictures from the cosmos and exciting information about them.

The website’s components are defined here. Notice the use of const in all declaration supporting immutability. Also, note the use of the async/await keywords where appropriate, to escape callback hell.