React
React is a free and open-source front-end JavaScript library for building user interfaces or UI components. It is maintained by Facebook and a community of individual developers and companies. It can be used as a base in the development of single-page or mobile applications.
Prerequisites 🚧
Basic knowledge of HTML, CSS, and JavaScript
Basic understanding of ES6 features. To get started you should at least know the following features:
- Let
- Const
- Arrow functions
- Imports and Exports
- Classes
Basic understanding of how to use npm
Topics to learn 🚀
- Basic Concepts
- VITE
- SPA vs MPA
- CSR vs SSR
- JSX
- Rendering Elements
- Components
- Props vs State
- Component Life Cycle
- Class based components vs Function based components
- Conditional Rendering
- Lists and Keys
- Forms
- Composition vs Inheritance
- Basic Hooks ( useState, useEffect, useRef )
- Context
- Advanced Hooks ( useReducer , useContext )
- Code Splitting
- useMemo, useCallback
- Error Boundaries
- React Reconciliation
- Fiber Architecture
- Fragments
- High Order Components
- Hooks(Writing your own Hooks, Common Hooks)
- Portals
- Refs
- Render Props
- React Router
- Dynamic Routes
- Outlet
- State Management Library
Documentation ✔️
Courses 📝
- Egghead - The Beginner’s Guide to React
- Scrimba - Learn React
- freeCodeCamp - Introduction to the React
- Odin project - Full Stack JS - React Course
Books 📖
Tutorials 🛠️
- React.js Tutorial for Beginners
- W3Schools React Tutorial
- Learn React.js Tutorial
- Learn React JS in This Free 7-Hour Course