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.
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.
Check out 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. 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.
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.
This project requires Node and Yarn for development. If needed, follow the installation instructions:
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
To install the project's dependencies run:
yarn install
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.
Now you can start the server with:
yarn start
Open https://localhost:3000
in a browser to see the development site.
👤 Javier Feliu
- Twitter: @JavierFeliuA
- Github: @wanderindev
Give a ⭐️ if this project helped you!
Copyright © 2021 Javier Feliu.
This project is MIT licensed.
I based this README on a template generated with ❤️ by readme-md-generator