A React Web Application that allows users to query, filter, and favorite specific meteorites.
The dataset used for this project can be found at NASA's Open Data Portal.
- Install Node 12.14.1+ from https://nodejs.org/en/download/
- Clone this repository.
git clone https://github.com/BrennonLee/meteorite-landing.git
- Navigate to this repository.
cd meteorite-landing
- Install the project dependencies and start the app.
yarn && yarn start
- Application will be available on http://localhost:3000
Code quality is managed through ESLint and Prettier. Inherited settings extend from @carimus/prettier-config and @carimus/eslint-config-react. All code is validated upon being committed.
Tests can be ran from the root of the project.
yarn test
This will scan the codebase and run any files matching the format <file_name>.test.js
(i.e. index.test.js
or saga.test.js
).
Tests utilize Jest as well as redux-saga-test-plan to cover redux saga integration into the application.
Deployment processes have the following flow:
Stage | Description |
---|---|
Pull Request against master | * Jest tests will execute. * Preview link for React App will be generated and attached to PR. * Preview link for Storybook will be generated and attached to PR. |
Merge into Master | * Jest tests will execute. * React App will be deployed to https://meteorite-landing.vercel.app. * Storybook will be deployed to https://meteorite-landing-storybook.vercel.app. |
Every pull request that is opened will automatically have two preview links generated via Vercel. The first link will be a preview of the React Web App with the latest updates. The second will be a preview link of the Storybook application to provide a way to view components, screens, and all their possible states.
Project was created with
- Enhance user visualization via different types of graphs in addition to our table