Newer
Older
# Libraries
For this project, we use the libraries below:
## React
Library to create user interfaces.
Design simple views for each state in your application, and React will efficiently update and render just the right components when your data changes.
Build encapsulated components that manage their own state, then compose them to make complex UI.
Since component logic is written in JavaScript instead of templates, you can easily pass rich data through your app and keep state out of the DOM
## React Redux
It is a predictable state container.
It is implemented for a better management of the states because it allows to centralize all the states and the logic of the application.
It lets a react component read data from a Redux store, and dispatch actions to the store to update data.
## Axios
HTTP client library
It allows to send HTTP request and manage the responses.
## Lodash
javascript utility library
- Iterating arrays, objects, & strings
- Manipulating & testing values
- Creating composite functions
## Moment
Date library to parse, validate, manipulate, and display dates and times in JavaScript.
## Luxon
Wrapper for Javascript dates and times.
## Jest
Testing library
It allows to evaluate functionalities of an app to ensure that the product is defect-free in order to produce the quality product.
## Enzyme
Testing utility for React
It makes it easier to test your React Components' output. You can also manipulate, traverse, and in some ways simulate runtime given the output.
## Sass
It allows us to easily manage large CSS files and split across different files.
It allows us to create variables, nested rules, mixins, functions, and do mathematical calculations.
## Material UI
It allows to create react component that implements Google's material design
## D3
It allows to manipulate documents based on data.
It combines visualization components and a data-driven approach to DOM manipulation.