This is a project I did to learn about redux and renew the UI of a project I did several years ago: skybox.
Dependency |
Use |
prop-types |
Declare types for props passed into React components |
react |
React library |
react-dom |
React library for DOM rendering |
react-redux |
Connects React components to Redux |
react-router-dom |
React library for routing |
react-toastify |
Display messages to the user |
redux |
Library for unidirectional data flows |
reselect |
Memoize selectors for performance |
Dependency |
Use |
@babel/core |
Transpiles modern JavaScript so it runs cross-browser |
@testing-library/react |
Test React components |
@wojtekmaj/enzyme-adapter-react-17 |
Configure Enzyme to work with React 17 |
babel-eslint |
Lint modern JavaScript via ESLint |
babel-loader |
Add Babel support to Webpack |
babel-preset-react-app |
Babel preset for working in React. Used by create-react-app too. |
css-loader |
Read CSS files via Webpack |
cssnano |
Minify CSS |
enzyme |
Simplified JavaScript Testing utilities for React |
eslint |
Lints JavaScript |
eslint-loader |
Run ESLint via Webpack |
eslint-plugin-import |
Advanced linting of ES6 imports |
eslint-plugin-react |
Adds React-related rules to ESLint |
fetch-mock |
Mock fetch calls |
html-webpack-plugin |
Generate HTML file via webpack |
http-server |
Lightweight HTTP server to serve the production build locally |
jest |
Automated testing framework |
json-server |
Create mock API that simulates create, update, delete |
mini-css-extract-plugin |
Extract imported CSS to a separate file via Webpack |
node-fetch |
Make HTTP calls via fetch using Node - Used by fetch-mock |
npm-run-all |
Display results of multiple commands on single command line |
postcss |
Post-process CSS |
postcss-loader |
Post-process CSS via Webpack |
react-test-renderer |
Render React components for testing |
redux-immutable-state-invariant |
Warn when Redux state is mutated |
redux-mock-store |
Mock Redux store for testing |
rimraf |
Delete files and folders |
style-loader |
Insert imported CSS into app via Webpack |
webpack |
Bundler with plugin ecosystem and integrated dev server |
webpack-bundle-analyzer |
Generate report of what's in the app's production bundle |
webpack-cli |
Run Webpack via the command line |
webpack-dev-server |
Serve app via Webpack |