We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Modern React with Redux [2024 Update]

Stephen Grider

This course gets updated frequently. Here are the latest changes

Read more

This course gets updated frequently. Here are the latest changes

  • February 21st, 2024: Added 2.5 hours of video showing routing and data loading with React Router

  • February 12th, 2024: Added 1 hour of video to demonstrate integrating Typescript with React

  • February 5th, 2024: Added 2.25 hours of video and 5 quizzes covering the basics of Typescript

Congratulations. You've found the most popular, most complete, and most up-to-date resource online for learning React and Redux.

Thousands of other engineers have learned React and Redux, and you can too. This course uses a time-tested, battle-proven method to make sure you understand exactly how React and Redux work, and will get you a new job working as a software engineer or help you build that app you've always been dreaming about.

The difference between this course and all the others: you will understand the design patterns used by top companies to build massively popular web apps.

React is the most popular Javascript library, and the job market is still hotter than ever. Companies large and small can't hire engineers who understand React and Redux fast enough, and salaries for engineers are at an all-time high. It's a great time to learn React.

What will you build?

This course features hundreds of videos with hundreds of custom diagrams to help you understand how React and Redux work. No prior experience with either is necessary. Through tireless, patient explanations and many interesting practical examples, you'll learn the fundamentals of building dynamic and live web apps using React.

Each topic included in this course is added incrementally, to make sure that you have a solid foundation of knowledge. You'll find plenty of discussion added in to help you understand exactly when and where to use each feature of React and Redux.

Adding to your experience, the course shows modern techniques and tools, equipping you with the latest skills needed for the dynamic web development landscape. You’ll get hands-on experience with cutting-edge features like Context API for state management, TailwindCSS for styling, React Router for navigation, and Typescript to add type safety to your React apps. This holistic approach ensures not only do you learn React and Redux but also the surrounding ecosystem that makes modern web development efficient and enjoyable.

Practical projects are at the heart of this learning experience. By integrating APIs, managing app state with Redux, and using React Hooks for component lifecycle management, you’ll have the opportunity to build applications that are both complex and high-performing. These projects are designed to simulate real-world web development scenarios, preparing you for the challenges that professional developers face daily.

My guarantee to you: there is no other course online that teaches more features of React and Redux Toolkit. This is the most comprehensive resource there is.

Below is a partial list of the topics you'll find in this course:

  • Master the fundamental features of React, including JSX, state, and props

  • From square one, understand how to build reusable components

  • Dive into the source code of Redux to understand how it works behind the scenes

  • Test your knowledge and hone your skills with numerous coding exercises

  • Use popular styling libraries to build beautiful apps

  • See different methods of building UI's through composition of components

  • Integrate Redux Toolkit for efficient state management

  • Leverage React Hooks for more intuitive component logic

  • Manage app-wide state with the Context API for simpler global state

  • Style components with TailwindCSS for rapid UI development

  • Utilize TypeScript with React for safer and more predictable code

  • Implement navigation within your app with React Router

  • Utilize Redux with forms for consistent state updates and user experience

  • Learn to use portals for rendering components outside the DOM hierarchy

  • Develop and interact with APIs for data-driven applications

  • Master the implementation of data tables to handle and display large sets of data

  • Get to grips with Immer for writing reducers with ease

Besides just React and Redux, you'll pick up countless other tidbits of knowledge, including design techniques, popular design patterns, and repeatable steps to build new components.

This is the course I wanted to take when I first learned React: complete, up-to-date, and clear.

Enroll now

What's inside

Learning objectives

  • Create dynamic web apps using the latest in web technology
  • Acquire the programming skills needed to obtain a software engineering job
  • Practice your skills with many large projects, exercises, and quizzes
  • Implement client-side navigation and routing using react router for seamless multi-page user experiences
  • Leverage the power of typescript with react for safer coding practices and reducing runtime errors
  • Master form handling techniques, including robust validation patterns to improve user input experience
  • Get a deep dive into state management with redux and the redux toolkit to manage complex app states effortlessly
  • Gain proficiency in handling api requests and managing data flow in your applications
  • Enhance application performance with immutable state management using immer
  • Develop dynamic and responsive data tables to display, sort, and filter large datasets efficiently
  • Streamline your development process by integrating tailwindcss for rapid ui development
  • Show more
  • Show less

Syllabus

Let's Dive In!
How to Get Help
Join Our Community!
Course Resources
Read more

Dive into building a language translation app with React, starting with a straightforward project to get a taste of React development. Utilize an online code editor and a prepared template to focus on coding without setup distractions. Learn to create dynamic translation output based on user input using React state and event handlers and enhance the app with inline styling for a polished look.

Explore the foundational concepts of React by dissecting the mechanics of JSX, a syntax close to HTML, used to define UI components. This segment delves into how React displays and updates HTML content in response to user interactions and the role of components, both individually in managing portions of the interface and holistically through coordination within an application's structure.

Core Concepts

Explore the React application startup process through an in-depth explanation of code bundling, server interactions, and the essential `index.html` structure. Further, discover React's state system with useState function usage to manage dynamic data, and the application’s translation feature which utilizes the Google Translate API.

Explore the creation of a new React project locally, beginning with the installation and update of Node.js, an essential step before generating the project. Delve into writing code and eventually deploying a professional-quality React application using Node to set up the project environment.

Learn to verify Node installation using terminal commands and to create a new React project using NPX. This walkthrough demonstrates generating a project named JSX to explore the basics of JSX syntax, as well as starting the development server with npm start and accessing the project in a browser on localhost:3000.

Explore the setup and structure of a React project, focusing on JSX transformation by Babel and file bundling by Webpack within the development server. Learn which files are essential for running a basic React app and the role of the dev server in transpiling JSX into executable JavaScript for the browser.

Creating Content with JSX

Embark on the journey of setting up a plain React application by clearing out unnecessary files and focusing on the essentials. Explore the creation of a basic component and displaying it using React and ReactDOM, covering the nuances of each library and the step-by-step process involving component creation, DOM element targeting, and rendering. Get ready to build a foundational understanding before tackling more advanced React concepts.

Dive into the intricacies of JSX, the syntax used in React to define UI components. Learn how JSX provides a concise way to write elements, which are then transformed by Babel into JavaScript, and discover why this abstraction makes development more intuitive compared to using React's createElement function directly. Explore JSX's role in instructing React on what to render and the significance of returning JSX from components for display.

Discover how to dynamically render content in React components using JSX, learning to utilize JavaScript variables and conditional logic to determine what to display. Understand how to interpolate variables within JSX using curly braces, and grasp the intricacies of how React handles different data types, such as strings, numbers, booleans, null, undefined, arrays, and objects.

Explore the dual utility of curly braces in JSX within React components, focusing on embedding expressions directly. Learn to display dynamic content, like the current time, with minimal code by executing expressions within the JSX. Understand the balance between clarity and conciseness when deciding to declare variables or include expressions inline.

Showing Javascript Values in JSX

Gain hands-on experience with React.js by incorporating a personal touch in a coding exercise. Modify the name variable within JSX using curly braces to display the name in an H1 element, then verify the solution to reinforce the concepts covered.

Quick Practice with JSX

Explore embedding JavaScript variables within JSX in React by learning to print dynamic content. Discover the use of curly braces to reference variables in the H1 tag, enabling the display of personalized content within a component.

Explore how to display multiple JavaScript variables within a single JSX element in React, such as combining names and ages in an H1 tag. Discover the common pattern of defining functions and calculating values at the top of components, then later utilizing these variables in the JSX returned at the bottom.

Learn to use the props system in React to customize HTML elements, such as creating a number-specific input field. Explore the syntax for adding string and number props with JSX, handling JavaScript values, and understand the key differences between JSX props and HTML attributes. Additionally, discover the correct usage of objects and arrays as props without the common pitfalls associated with their implementation in JSX.

Explore the nuances of working with JSX properties, specifically understanding how attributes translate from HTML to JSX. Learn to apply JSX-specific rules, such as using camelCase for prop names, to correctly integrate HTML attributes in React components and ensure features like autoFocus work properly in your application.

Explore the conversion of traditional HTML to JSX in React, focusing on how to correctly handle attributes that require numbers, Booleans, and inline styles. Learn to use curly braces for numeric values, the shorthand for Boolean props, and the object syntax for styling, while avoiding common pitfalls and warnings in the console.

More on JSX
Practice JSX Conversion

Explore how to correctly convert a React component by applying five key rules to fix a malfunctioning text area. Learn to adjust prop names to camel case, use curly braces for number attributes and boolean properties correctly, switch 'class' to 'className', and format inline styles as objects to make the component functional.

Learn how to better organize a React project by splitting it into multiple files, following the community convention of capitalizing component filenames. This video demonstrates creating an 'App.js' file to house the App component, and refactors 'index.js' to import and render it, improving project readability and maintainability.

Explore the essentials of module systems in React, particularly focusing on the nuances of import and export statements critical for managing components and files. This comprehensive guide delves into default and named exports, their respective syntaxes, rules for renaming and importing variables, and how to construct relative paths in complex directory structures.

Imports and Exports
Cheatsheet for JSX
Building with Reusable Components

Dive into building a React application that showcases a collection of personal digital assistants, like Alexa and Siri, focusing on the creation of reusable components. Learn to recognize opportunities for component reuse, avoid duplicated JSX, and establish a clear component hierarchy with parents, children, and siblings. Also, cover the customization of reusable components to display unique content for each instance.

Embark on setting up a new React project by creating the foundational structure. Start with a clean `src` directory, followed by crafting essential components: `index.js`, `App.js`, and `ProfileCard.js`. Learn to build a simple `ProfileCard` component to display three instances within the `App` component, while managing imports and rendering the app in the root DOM element. The focus is on achieving a basic rendering of components, setting the stage for further customization and dynamic content integration.

Explore the use of React's props system to customize components by passing data from a parent component to its child components. Learn how to communicate specific information, like titles and images, to individual instances of the profile card components and understand the unidirectional data flow that props facilitate in a React application.

Learn to effectively use React's prop system to pass data into components, creating distinct profile cards with unique titles and handles. Discover how to define custom attribute names that make code more intuitive for future maintenance and allow the seamless flow of data from parent to child components within a React application.

Explore how to dynamically render components in React by adding attributes to profile cards, then utilizing the prop system to pass data, allowing for unique content with a single component. Discover common React conventions for handling props to efficiently manage component customization and avoid repeated JSX.

Enhance React components' readability with JavaScript destructuring, making them more legible by simplifying prop references. Explore how to replace repetitive `props` usage with destructuring in both function arguments and the component body, streamlining code without adding extra variables. This common pattern is crucial for cleaner, more maintainable code in professional React projects.

Practice with Props

Explore how to utilize React component props effectively by examining the 'bright text.js' exercise solution. Learn about prop requirements, destructuring within components, and how to dynamically alter component behavior by passing in specific props such as 'color' with values red, green, and blue to enhance understanding of React components customization.

Explore the benefits of utilizing React Developer Tools, a browser extension for Chrome and Firefox, to better inspect and debug an application. Learn to visualize component hierarchies, understand the flow of props, and inspect component output, streamlining the development process in complex React projects.

Explore common pitfalls when working with React prop systems, including the critical practice of matching attribute names correctly between parent and child components. Delve into how to debug prop-related issues, such as typos or incorrect spellings, which can lead to undefined errors and understand the importance of exact naming for smoother data flow in React components.

Communicating With Props
Images for the App

Explore how to add and use images in a ReactJS project by importing them as PNG files. Learn the difference between importing JavaScript files and non-JavaScript assets like images, dealing with base64 encoding for small images, and the use of separate file references for larger images. Understand how to display images in components using JSX and manage external images from an API without import statements.

Explore how to pass image variables as props into profile cards in React.js, ensuring the correct usage of JSX curly braces for JavaScript expressions. Learn the importance of using alt attributes for accessibility in images, addressing development server warnings to create an inclusive user experience.

Explore how to enhance React application styling using the Bulma CSS library. Gain an understanding of CSS fundamentals, how CSS operates within React components, and learn to integrate Bulma via NPM for professional-looking results. Delve into applying pre-written CSS rules for rapid, effective styling improvements.

Learn the correct way to introduce Bulma, a CSS framework, into a React.js project, utilizing npm to manage the installation efficiently. Understand the importance of inspecting the node modules directory to locate and import the necessary CSS files into the application, ensuring that external styles are correctly applied to enhance the project's appearance.

Explore integrating the Bulma CSS framework into a React component to build aesthetically pleasing profile cards. Learn to meticulously structure JSX with specific class names mandated by Bulma to ensure seamless styling, and grasp the importance of additional HTML to address layout issues such as overly large images. Discover how to overcome common challenges with CSS libraries through practical examples.

Enhance the styling of a React application by utilizing Bulma CSS for a polished hero banner and adding descriptive elements to profile cards. Learn how to adjust HTML structure, apply correct class names, and pass additional props for content display. This lesson focuses on refining the look and feel of the app with practical hands-on modifications.

State: How to Change Your App

Discover how to build dynamic content in React applications that respond to user interactions. Learn by creating an app that adds animal images on button clicks and enlarges a heart icon when an animal is liked, a deliberately designed project to teach key concepts before tackling more real-world scenarios.

Dive into the development of a React application by setting up the basic structure and component hierarchy for an interactive animal display. Learn how to organize and create functional components such as `App` and `AnimalShow`, manage props to customize child components, and establish a groundwork for handling dynamic content that changes with user interaction.

Explore the essentials of React by learning about two critical concepts: the event system and the state system. Start by creating an interactive UI with a simple button to better understand how user interactions are detected and handled, and how to manipulate the state to update the screen.

Explore the intricacies of the React event system, learning how to select appropriate events for user interactions such as clicks and changes. Understand the creation and naming of event handler functions, the conventions around their usage, and the importance of passing them correctly as props to plain elements without invoking them prematurely. Additionally, the handling of common events like `onClick` and `onChange` in React applications is addressed.

Understand the nuances of using parentheses in React event handlers, specifically why adding them executes the function immediately instead of passing a reference to be invoked later. Explore variations of passing event handlers to the `onClick` prop, comparing in-line arrow function callbacks versus separate function definitions based on readability and code length.

Quiz on Events
Exercise with Events

Consolidate React skills by adding a click event handler to a button that triggers a console log output. Learn to implement inline arrow functions for simple event handling and validate solutions with console tests or automated checks.

Discover the power of React's state system, which allows for dynamic updates of content in response to user interactions. By leveraging `useState` from React, learn how a simple click can increment a count variable and how that can lead to the re-rendering of components to display the updated state on-screen, ensuring the UI reflects the current state data accurately.

Learn the fundamental concept of state in React, which allows components to react to user interactions such as clicks and typing. Discover the useState function for initializing state within components, understand how to set default values, and utilize state in JSX. Uncover the pattern of updating state through event handlers and how React re-renders components in response to state changes.

Delve deeper into managing state in React applications by exploring the functionality of the useState hook. Learn how calling the setter function, such as setCount, triggers a component to re-render with the updated state. Understand the initial value assignment in useState and the process of state updating, where subsequent renders utilize the new state value instead of the initial default.

Got These Five Points?

Explore the concept of array destructuring in JavaScript, a feature frequently used in React components, particularly with `useState`. Learn how array destructuring simplifies the retrieval of elements from arrays and understand its significance in assigning state variables and setter functions efficiently when managing component state.

Dive into hands-on coding to build upon the understanding of state and events with a React application, showcasing dynamic addition of randomized animal pictures as users interact. Address the practical design of state by introducing an array-based 'animals' state to manage the display of animal components, moving away from the temporary count variable to a robust array mechanism. Explore the benefits of delivering unique props to individual components, ensuring animal diversity.

Learn to implement a 'getRandomAnimal' function in the React app, which selects a random animal from an array and returns it. Explore updating state correctly with 'setAnimals' to add a new random animal to an array without directly modifying the state. This ensures that the React component re-renders accordingly when the state changes.

Explore the 'Animal Show' component, which dynamically displays elements by transforming an array of strings into React components using JavaScript's built-in map function. Delve into how props enable component customization and why assigning 'keys' to list items is vital for React's efficient DOM updates, although their importance will be clearer in complex applications.

Enhance the 'AnimalShow' React component by importing SVGs and mapping them to display alongside their respective animal names. Learn to dynamically render SVG images based on incoming prop types using JavaScript object shorthand notation and a simple mapping strategy to match an animal type to its SVG, preparing to add interactive styling features.

Explore React's state management and event handling to implement interactive UI elements. Learn to use the useState hook and onClick event handler to dynamically adjust the size of a heart icon based on user interactions, integrating inline styles to manipulate the element's appearance based on state changes within the AnimalShow component.

Explore modular styling in React apps by adding separate CSS files for each component. Dive into creating app.css and animal_show.css to style the App and AnimalShow components respectively, ensuring a more manageable and scalable approach to CSS in larger projects. Learn how to import and apply CSS rules to JSX elements using class names and selectors.

Enhance React components with tailored styling by assigning class names within JSX and creating corresponding CSS selectors. Dive into app.js to tag elements, then transition to app.css to apply styles for buttons, animal lists, and individual items, streamlining their layout with flexbox properties to center and uniformly size them. Focus on practical implementation without delving deeply into CSS theory, given React's priority in this course.

Delve into the core concepts of React covered in the application built during the course: event handling, state management, and list rendering. Explore event listeners, callback functions, and JSX syntax for events. Learn the importance of state in updating UI and its unique role in React components, and get familiar with the `useState` hook. Master the process of rendering lists using the `.map` function and understand when to utilize keys for list items. All these foundational techniques are critical for advancing to more complex React applications.

Using an API with React

Proceed to a new React application focused on building an image search feature, similar to Google image search. Learn how to create a search interface that makes API requests to a third-party server for image data, which is then displayed in a grid format. Understand the difference in handling images when they're not predetermined assets, unlike previously used import statements for known images.

Begin with a clean slate in React by deleting existing files in the SRC directory and creating a new organizational structure for the project. Learn how to structure React applications by designing and creating an App component along with three other components—SearchBar, ImageList, and ImageShow—to manage different parts of a photo search app, ensuring a tidy and maintainable codebase.

Begin by exploring the data fetching process crucial to the application's functionality where users enter search terms to retrieve image lists. Learn to make HTTP requests to the Unsplash API, understand the response structure, and prepare to integrate the image data into a React application. Delve into HTTP request concepts and optional videos on asynchronous JavaScript if needed.

Explore the fundamentals of HTTP, the protocol essential for web communication. Delve into the anatomy of HTTP requests and responses, learn about methods like GET, POST, PUT, PATCH, DELETE, and comprehend the significance of status codes such as 200 OK and 400 Bad Request. Understand how React handles asynchronous operations, preparing for concepts like promises and awaiting responses from APIs like Unsplash.

Learn to utilize the Unsplash API to search for images within a React app. Discover the process of registering for an account, creating an application to obtain an access key, and understanding the API documentation. Understand the API request structure, including endpoints and authorization headers necessary to fetch image data using search parameters.

Learn how to integrate Axios, a popular JavaScript library, into a React project for making HTTP requests. Grasp how to install Axios using npm, how to structure API requests, how to include authorization headers and query parameters, and how to handle asynchronous API calls with async/await in React applications.

Explore the intricacies of handling asynchronous operations in React applications with the async/await syntax. Understand how to effectively manage API requests and responses, ensuring JavaScript execution pauses until data retrieval is complete, preventing premature access to unresolved data. Learn to use the `async` modifier to enable `await`, and when to integrate these keywords in a function to achieve seamless data fetching.

Optimize the data fetching function by incorporating search term parameters to query the Unsplash API, which is subject to a rate limit of 50 requests per hour. Enhance the function to return an array of image objects instead of the full response, streamlining integration with the React component that will utilize this data.

Explore the challenges of data flow in React applications, especially how components share state and trigger actions. Delve into the specifics of the component hierarchy involving 'App', 'SearchBar', and 'ImageList' components, and learn how to manage state and execute data fetching with React's prop system to pass data between parent-child relationships. Discover strategies to facilitate communication from child components to their parent to initiate API requests and handle the returned data.

Explore enabling child-to-parent communication in React using callback functions as props. Learn to capture user input from a child component, like a search term, and pass it up to the parent component to initiate data fetching, culminating in the aggregation and display of API response data.

Dive into React components and event handling by implementing a search bar. Learn to pass a callback function using props from a parent component down to a child, facilitating data flow upwards when a user interacts. Explore the setup of form submission via a button, to be replaced later with enter key functionality, and prepare to integrate API calls for fetching images based on user input.

Upward Communication

Explore handling form submissions in React by detecting the 'Enter' key press with a `form` element. Uncover the necessity of event.preventDefault to prevent default form behavior and understand how wrapping an `input` in a `form` triggers a submit event. Learn to pass data to parent components upon form submissions and prepare to extract values from inputs for network requests.

Learn the proper method to handle form input in React by creating and managing state, setting up event handlers, and controlling input values. Gain insight into why direct DOM manipulation is discouraged and understand the five steps necessary to work with text inputs effectively, setting the stage for more advanced features later on.

Explore the handling of input elements in React, emphasizing the vital role of the `value` prop. Discover the underlying mechanics of binding input values to state variables, enabling control over inputs with React's state system. This approach simplifies reading and updating input values and lays the groundwork for adding dynamic features that respond to user input.

Creating a Controlled Input

Learn to manage user input in a React application by creating and updating state with an event handler. The exercise demonstrates how to reflect user-entered text from an input field to display live updates within a paragraph element, utilizing React's state management and event handling patterns.

Enhance React components by integrating form submission with state management to communicate data to parent components. Learn to handle a user's form submission in the search bar component, using controlled inputs to maintain the term state and pass it to the `handleSubmit` handler in the app component. Discover how to utilize the `searchImages` function, call it with the search term, and inspect network requests to confirm successful API calls.

Ensure search images functions correctly in React by using async/await patterns. The lesson focuses on handling asynchronous JavaScript, specifically when dealing with network requests and Promises. Learn to properly await the response from an API to receive an array of image objects and pass the data through props to a child component.

Explore the integration of state and props in React while passing a fetched list of images from an API response to the ImageList component. Learn to utilize useState to manage state changes, update content dynamically on the screen, and understand the re-rendering process affecting both parent and child components in a React application.

Discover how to dynamically render a collection of React components by iterating over an array of image objects and utilizing the `.map` function. Learn to pass unique properties to each `ImageShow` component and address the significance of the `key` prop for list items to maintain performance and avoid common issues in React.js applications.

Explore the significance of the `key` prop in React and how it optimizes updates to lists of elements. Delve into the process of applying a key prop during the mapping step to ensure efficient, minimal DOM changes when state updates occur, enabling optimized rendering and avoiding unnecessary re-renders of entire lists.

Explore the crucial role of 'keys' in React lists for ensuring efficient updates. Learn how to correctly apply keys to the topmost element in a list, ensure they are unique, consistent, and understand the importance of string or number data types for keys. Practical examples and common pitfalls are explained, along with fallbacks for when unique IDs are not available.

Learn to enhance the user experience in React applications by efficiently displaying images. Discover how to select the optimal image size from an API response for performance benefits and implement an image element with both `src` and `alt` attributes for improved accessibility and faster loading times. Additionally, understand the importance of styling for presenting images in an appealing way.

Enhance the aesthetic and functionality of the React application by introducing CSS styles to the search bar and aligning image lists more effectively. Learn to create and link CSS files, `searchbar.css` and `imagelist.css`, to their respective components, apply styling rules for better UI layout, and add descriptive labels for user guidance.

Explore the foundational concepts of React, focusing on controlled inputs management through state, enabling seamless text fields handling. Dive into the intricate flow of communication between parent and child components, mastering the callback functions for data transfer. Understand the crucial role of keys in rendering lists, ensuring performant and bug-free UI updates when working with dynamic data.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops front-end web development skills to the professional level, critical for employability in the industry
Provides a comprehensive and up-to-date curriculum for learning React and Redux
Taught by recognized instructors, ensuring high-quality course content and support
Incorporates modern techniques such as Context API, Tailwind CSS, and React Router
Emphasizes practical skills through numerous projects
Requires no prior experience in React or Redux, making it suitable for beginners

Save this course

Save Modern React with Redux [2024 Update] to your list so you can find it easily later:
Save

Reviews summary

Engaging course

According to students, Modern React with Redux [2024 Update] is a well received course. Students say that the course is engaging. While some students feel that the course could be more concise, students generally report that the instructor is very well done.
Many students report that the course is engaging.
"Very Well done, Stephen. Did feel at times the course could have been a little more concise. Thank you."
At least one student reports that the course could be more concise.
"Very Well done, Stephen. Did feel at times the course could have been a little more concise. Thank you."

Career center

Learners who complete Modern React with Redux [2024 Update] will develop knowledge and skills that may be useful to these careers:
Front-End Developer
Front-end developers are the ones who work on the parts of websites and applications that users interact with directly. This course teaches the fundamentals of React, one of the most popular front-end development frameworks, and Redux, a state management library for React. With this knowledge, you can build interactive and dynamic user interfaces for web applications.
React Developer
React developers are a subset of front-end developers who specialize in building user interfaces using the React framework. This course provides a comprehensive overview of React, including its core concepts, state management, and best practices. By completing this course, you will gain the skills necessary to become a proficient React developer.
Web Developer
Web developers are responsible for the design and development of websites. This course teaches the fundamentals of web development, including HTML, CSS, JavaScript, and React. With this knowledge, you can build responsive and interactive websites that meet the needs of users.
Full-Stack Developer
Full-stack developers are responsible for both the front-end and back-end of websites and applications. This course teaches the fundamentals of both front-end and back-end development, including HTML, CSS, JavaScript, React, Node.js, and MongoDB. With this knowledge, you can build complete web applications from scratch.
Software Engineer
Software engineers are responsible for the design, development, and maintenance of software applications. This course teaches the fundamentals of software engineering, including object-oriented programming, data structures, algorithms, and software design patterns. With this knowledge, you can build robust and scalable software applications.
Data Scientist
Data scientists are responsible for collecting, analyzing, and interpreting data to gain insights and make predictions. This course teaches the fundamentals of data science, including statistics, machine learning, and artificial intelligence. With this knowledge, you can build models to predict customer behavior, identify trends, and make informed decisions.
Product Manager
Product managers are responsible for the development and launch of new products. This course teaches the fundamentals of product management, including user research, market analysis, and product development. With this knowledge, you can bring new products to market that meet the needs of users.
User Experience Designer
User experience designers are responsible for the design of user interfaces for websites and applications. This course teaches the fundamentals of user experience design, including human-computer interaction, usability, and accessibility. With this knowledge, you can create user interfaces that are easy to use and enjoyable to interact with.
Technical Writer
Technical writers are responsible for creating documentation for software and hardware products. This course teaches the fundamentals of technical writing, including audience analysis, content organization, and style. With this knowledge, you can create clear and concise documentation that helps users understand and use products.
Business Analyst
Business analysts are responsible for gathering and analyzing data to identify business needs and opportunities. This course teaches the fundamentals of business analysis, including data collection, data analysis, and business process improvement. With this knowledge, you can help businesses make informed decisions and improve their performance.
Project Manager
Project managers are responsible for planning, executing, and closing projects. This course teaches the fundamentals of project management, including project planning, risk management, and stakeholder management. With this knowledge, you can lead projects to successful completion.
Quality Assurance Analyst
Quality assurance analysts are responsible for testing software and hardware products to ensure that they meet quality standards. This course teaches the fundamentals of quality assurance, including test planning, test execution, and defect reporting. With this knowledge, you can help ensure that products are high-quality and meet the needs of users.
Salesforce Developer
Salesforce developers are responsible for developing and maintaining Salesforce applications. This course teaches the fundamentals of Salesforce development, including the Salesforce platform, Apex programming language, and Visualforce markup language. With this knowledge, you can build custom Salesforce applications that meet the needs of businesses.
Android Developer
Android developers are responsible for developing and maintaining Android applications. This course teaches the fundamentals of Android development, including the Android platform, Java programming language, and XML markup language. With this knowledge, you can build custom Android applications that meet the needs of users.
iOS Developer
iOS developers are responsible for developing and maintaining iOS applications. This course teaches the fundamentals of iOS development, including the iOS platform, Swift programming language, and Xcode development environment. With this knowledge, you can build custom iOS applications that meet the needs of users.

Reading list

We've selected 12 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Modern React with Redux [2024 Update].
React: Up and Running provides a comprehensive guide to building web applications with React and Redux, covering both core concepts as well as advanced topics. This text can be considered a more in-depth and thorough version of the current course, expanding upon the fundamentals and offering further guidance for complex applications.
React Design Patterns and Best Practices provides a collection of design patterns and best practices for building robust and efficient React applications. offers practical guidance and real-world examples, helping developers to adopt industry-standard approaches and improve the quality of their code.
Building React Applications with Redux hands-on guide to building React applications with Redux. provides step-by-step instructions and practical examples, making it suitable for those who prefer a more guided and code-centric approach to learning.
Fullstack React provides a comprehensive overview of the React ecosystem, including topics such as Redux, state management, testing, and deployment. is suitable for those who want to gain a broader perspective on React and its related technologies.
JavaScript: The Good Parts classic in the JavaScript community, providing a deep dive into the language's core features and best practices. is recommended for those who want to gain a deeper understanding of JavaScript, which is essential for fully comprehending React and Redux concepts.
Eloquent JavaScript offers a comprehensive and modern introduction to JavaScript, covering both fundamental concepts and advanced topics. can serve as a valuable resource for those looking to enhance their JavaScript skills and deepen their understanding of the language.
The Pragmatic Programmer classic in the software development community, offering practical advice and best practices for software engineers. can be beneficial for all levels of developers, including those working with React and Redux, as it provides insights into software design, testing, and maintenance.
Pro React is an advanced guide to React component patterns. provides in-depth explanations and practical examples of advanced React techniques, such as functional programming, error handling, and performance optimization, helping developers to build more robust and scalable React applications.
JavaScript Patterns provides a collection of common JavaScript patterns and idioms. can be a valuable reference for React developers, helping them to write more efficient and reusable code, and to better understand the underlying design principles of React and Redux.
Clean Code emphasizes the importance of writing clean and maintainable code. provides guidelines and best practices for code organization, naming conventions, and refactoring techniques, which are essential for building high-quality React and Redux applications.
React Native: Building Mobile Apps with JavaScript comprehensive guide to building mobile applications with React Native. While this book is not directly related to the course's focus on web applications, it can be a valuable resource for those interested in expanding their skills to mobile development using React.
Refactoring guide to improving the design and structure of existing code. provides techniques and strategies for refactoring React and Redux code, helping developers to make their applications more maintainable, scalable, and efficient.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Modern React with Redux [2024 Update].
Building React Native Apps with Redux and GraphQL
Most relevant
Building Applications with React 17 and Redux
Most relevant
Build a Web App using React and Redux
Most relevant
Advanced React and Redux
Most relevant
Build a Web App incorporating React and Redux Hooks
Most relevant
MERN Stack Front To Back: Full Stack React, Redux &...
Most relevant
Node with React: Fullstack Web Development
Most relevant
Using React 17 Hooks
Most relevant
React and Redux
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser