Updated: July 18, 2023
By Bob Ziroll
The best overall combination of topic coverage, learning experience, instructor quality, and delivery of outcomes. And you can take it for FREE, though we recommend subscribing to get the full benefits.
If you like learning by building projects and want lots of hands-on practice, you’ll love this course. Scrimba’s methodical approach to teaching concepts means you’re practicing something right after learning it, and then putting everything together into a project. Over the span of the course's four parts, you build 8 projects - 4 of them entirely on your own.
Sometimes the exercises provide a bit too much hand holding, veering more to "recreate what I just did" rather than "practice that technique to solve a new problem."
The course will take longer to complete than the listed runtime, in order to complete the projects.
You can take the entire course for free, but we highly recommend purchasing a Pro subscription for a month or two while going through this course in order to get a certificate, full access to the community, and code reviews. Scrimba is one of the few platforms that has made their community truly valuable.
By Brian Holt
Taught by one of the world's leading React experts, this workshop is one of the best starting points for learning React the way it’s actually used in top organizations like Reddit, Netflix, and Stripe.
Beyond a tutorial on components, state, and hooks, this teaches you how real world developers utlilize React - and what features you shouldn't bother with. In this course, you'll join Brian to code through the development of a pet adoption site. While not the deepest dive into React's core concepts, it’s enough to get you started with some meaty React projects or to learn advanced topics.
Frontend Masters has a complete React Path with an additional 15 hours of core React content. If you're serious about working with React professionally, we recommend subscribing and taking the full path.
While the course is chock-full of insights, occasionally within a particular section, Holt answers a question, says something super insightful, or covers a secondary concept. As a result, unless you’re taking copious notes, it can be difficult to go back to these specific points when you want to review.
As a subscriber, you have access to a Discord server where Frontend Masters staff and instructors hang out and answer questions. It's one of the more valuable learning communities out there.
We recommend supplementing this course with an independent project, in order to be ready to use React in a professional setting.
Great instructors delivering focused, polished microlearning. A solid choice for screencast training, but you should supplement with independent practice.
This series of video courses covers everything from the basics to advanced TypeScript features. The courses are concise and scoped well to cover the core topics without too much overlap.
Pluralsight's authors are the main draw here, as experts Dan Wahlin, John Papa, Simon Allardice and others guide you through real-world TypeScript usage.
Pluralsight's TypeScript Core Language path includes an adaptive assessment that will measure your proficiency with the language. The assessment can give you a good idea for how your TypeScript knowledge stacks up against other Pluralsight users and areas to target for additional study.
You'll need additional practice with hands-on projects to make the leap from watching to building.
The courses in this path were all created in 2021 or earlier, so the content is getting a bit dated, covering TypeScript 3 and 4. But the core concepts covered in the path are still valid at time of writing.
A solid choice for screencast training by expert authors, but you should supplement with independent practice and projects.
This series of video courses covers everything from the basics to advanced React features. The courses are concise and scoped well to cover the core topics without too much overlap.
Pluralsight's authors are the main draw here, as experts Cory House and others guide you through real-world React usage.
Pluralsight's React path includes an adaptive assessment that will measure your proficiency with the library. The assessment can give you a good idea for how your React knowledge stacks up against other Pluralsight users and areas to target for additional study.
The first 6-8 hours of this 30+ hour path are all you'll need to become conversational in the key React concepts, but you'll need additional practice with hands-on projects to make the leap from watching to building.
Pluralsight doesn't have a great community solution, and support through the forums is extremely limited. If learning alongside others is important to you, then you should go with another solution or supplement with a React Discord community.
React's follows a component-based architecture, where each component manages its state and renders the UI based on changes to that state. It efficiently updates the DOM using a virtual DOM, minimizing direct manipulation of the actual DOM and optimizing performance.
The Key Topics to focus on when learning React:
Components: Understand the concept of components in React, which are building blocks for user interfaces. Learn how to create functional components and class components and understand their differences.
State and Props: Understand how to manage state within React components to enable dynamic and interactive user interfaces. Learn about props, which allow you to pass data from parent components to child components.
Virtual DOM: Grasp the concept of the virtual DOM, an in-memory representation of the actual DOM used by React for efficient rendering and updating of components.
Lifecycle Methods: Learn about React's lifecycle methods (for class components) and their order of execution. Understand how to utilize lifecycle methods for component initialization, updating, and cleanup.
React Hooks: Explore React Hooks, which allow you to use state and other React features in functional components. Learn about useState, useEffect, useContext, and other hooks for managing state and performing side effects.
Forms and Events: Learn how to handle form submissions and user interactions using React's event system. Understand how to use controlled components to manage form state.
React Router: Familiarize yourself with React Router, a library for handling navigation and routing in React applications. Learn how to set up routing, create route configurations, and handle dynamic routes.
State Management: Explore state management solutions like Redux or the React Context API for managing global state and sharing data across components.
Build Tools and Package Managers: Get to know build tools like Webpack and bundlers like Parcel, which are commonly used with React projects. Learn how to use npm or Yarn as package managers to manage dependencies.
By focusing on these key concepts, you will build a strong foundation in React development and be well-equipped to create interactive and dynamic user interfaces for web applications.
Thanks for reading!