Skip to content

A website developed using functional programming in JavaScript and that consumes from several NASA APIs.

License

Notifications You must be signed in to change notification settings

wanderindev/earth-mars-and-beyond

Repository files navigation

Earth, Mars, and Beyond 🚀

Documentation Maintenance License: MIT Twitter: JavierFeliuA

This website is my second project submission for the Udacity Intermediate JavaScript Nanodegree. In this project, I applied the lessons learned in the Functional Programming in JavaScript course.

The Big Picture

For this project, I had to create a website that consumes from various NASA APIs. The goal is to apply the concepts and practices learned in the Functional Programming course, such as:

  • Using pure functions
  • Supporting immutability with Immutable JS
  • Iterating over, reshaping, and accessing information from complex API responses
  • Using ES6 constructs like const, let, arrow functions, and new Array methods.

Live Website

Check out the live website here.

The APIs

  • 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. We can retrieve photos sent by the Spirit, Opportunity, and Curiosity rovers from the Red Planet from this API, 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.

Project instructions

You can find the starter code for the project here. The repository's README contains the project instructions.

Check out the project's grading rubric here.

How to use

Prerequisites

This project requires Node and Yarn for development. If needed, follow the installation instructions:

Clone the repository

Once the prerequisites are met, clone the repository and cd into the project's root:

git clone https://github.com/wanderindev/earth-mars-and-beyond.git
cd earth-mars-and-beyond

Install the dependencies

To install the project's dependencies run:

yarn install

Add your NASA API key

To access the NASA endpoints, you will need an API key. You can get the key from the NASA API site.

To use your key, rename the file .env-sample located in the project's root to .env and add your key there.

The API key should be secret so make sure to keep the .env file out of version control by adding the appropriate entry in your .gitignore file.

Start the server

Now you can start the server with:

yarn start

Open https://localhost:3000 in a browser to see the development site.

Author

👤 Javier Feliu

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2021 Javier Feliu.

This project is MIT licensed.


I based this README on a template generated with ❤️ by readme-md-generator

About

A website developed using functional programming in JavaScript and that consumes from several NASA APIs.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published