- React.createElement()
- React.createRoot()
- render()
- Parcel
- Bundler
- ^ & ~ in versions for dependencies
- browserlist
- JSX
- React Components (Class, Functional)
- Component Composition: Component inside a component
- Features of JSX
- Props
- Destructuring on the fly
- Optional Chaining
- Named and Default Exports
- React Hooks
- useState()
- Reconciliation ALgorithm
- Monolith & Microservices
- useEffect()
- CORS
- Shimmer
- Filtering the data
- useEffect()
- Routing
- createBrowserRouter()
- RouterProvider
- useRouterError()
- Children Routes
- Outlet
- Link Component
- Class Based Components
- render()
- super() constructor
- React.Component
- State declaration
- setState()
- React Component LifeCycle Methods
- componentDidMount()
- componentWillUnmount()
- componentDidUpdate()
- Render Phases
- Optimize React App
- Custom Hooks
- App Chunking (Lazy Loading)
- lazy()
- Suspense tag
- Tailwind
- Installation
- Initialization
- High Order Components
- Accrodion
- Prop Drilling
- Context API
- createContext()
- useContext()
- Context.Provider
- Context.Consumer
- Redux Toolkit
- Installation & Setup
- Redux Store
- Actions in Redux
- Reducers in Redux
- Redux Store - configureStore()
- Provider
- Redux Slice - createSlice()
- name
- initialState
- reducers (functions)
- Selectors - useSelector()
- Dispatch a reducer - useDispatch()
- Mutating states in old Redux toolkit
- Immer - used in Redux to change states
- current()
- Testing
- React Tesing Library
- Jest library
- Dependencies and Setup
- Configure with babel & parcel
- jsdom - virtual browser for testing
- test()
- expect()
- tobe()
- toBeInTheDocument()
- Unit Tesing using Jest
- describe()
- it()
- Redux in Testing
- Integration Testing
- fireEvent
- Testing High Order Components
- global.fetch()
- act()
- getByRole()
- getByTestId()
- data-testid attribute in JSX
- afterAll()
- afterEach()
- beforeAll()
- beforeEach()
- Multiple test at a time.