Learn React: My best-Curated resources to master the JS framework

In 2021, we had a presidential election in Uganda. The whole internet was shut down for the entire week of January. Then it was partially reinstated for another month or so. Most social media websites we banned. In fact, even two years later Facebook is still banned. So, I decided to learn React JS. I really just wanted to get my mind off the depressing political situation in the country.

Alright, enough with the backdrop to my journey. I have grown to like React as a framework for creating dynamic single-page Apps. It’s mostly useful for building rich front-end interfaces that are highly dynamic.

The following are some of the resources I used while learning React. So here we go;

// React JS

// Redux 

// Redux loggers 

// DB/ORM 

// UI/CSS

// server-side/Api

//Authentication 

// images/media assets 

// JS testing 

//API testing 

// Deployment 

// IDE

// Courses & articles 

React Router DOM: Setup, essential components, and parameterized routes

https://blog.logrocket.com/react-router-dom-set-up-essential-components-parameterized-routes-505dc93642f1/

Articles 

Books

React project dependencies

Here are some of the dependencies you might need in a React project.

  1. "react": "^17.0.2": React is a JavaScript library for building user interfaces. This dependency installs React version 17.0.2.
  2. "react-bootstrap": "^2.2.0": React Bootstrap is a UI framework that provides pre-designed components and styles for React applications. It allows you to build responsive and visually appealing user interfaces. This dependency installs React Bootstrap version 2.2.0.
  3. "react-dom": "^17.0.2": React DOM is the package that provides DOM-specific methods for React. It allows React components to be rendered and manipulated in the browser’s DOM. This dependency installs React DOM version 17.0.2.
  4. "react-redux": "^7.1.0": React Redux is the official Redux binding for React. It provides a set of React components and hooks that allow you to interact with the Redux state management library in a React application. This dependency installs React Redux version 7.1.0.
  5. "redux": "^4.0.4": Redux is a predictable state container for JavaScript applications. It helps manage the state of an application in a centralized store, making it easier to track and update the application state. This dependency installs Redux version 4.0.4.
  6. "redux-devtools-extension": "^2.13.8": Redux DevTools Extension is a development tool that provides a browser extension for inspecting and debugging Redux state changes. It enhances the Redux development experience by allowing you to view, time-travel, and track changes to the Redux store. This dependency installs Redux DevTools Extension version 2.13.8.
  7. "redux-thunk": "^2.3.0": Redux Thunk is a middleware for Redux that allows you to write action creators that return functions instead of plain objects. It enables asynchronous actions in Redux by delaying the dispatch of an action, allowing you to perform side effects like API calls before dispatching the actual action. This dependency installs Redux Thunk version 2.3.0.

These packages are commonly used in combination to build React applications with Redux state management, styling with React Bootstrap, and server-side rendering with Next.js.

I hope you found these links and resources helpful.