Resources to Learn React: Everything You Need to Get Started

Share this article

React is a JavaScript library, originally built by developers at Facebook, for building fast user interfaces. If you’re dipping your toe into the React waters, or if your React development journey is picking up speed, it can be hard to stay across the fundamentals, techniques, tools and tricks – so we’ve created this guide to what’s out there and what we recommend. No matter where you are on your journey, the best React content you need is here – take a look and dive in! (And if you think we’ve missed something, let us know in the form below!)

Articles

Whether you’re still deciding to take the React plunge, or you’re looking at more advanced tooling and systems, here are the best written resources we could find.

Introductions and Comparisons

Fundamentals

Slightly More Advanced

Courses

If cobbling together your own learning path via articles isn’t for you, or you’d like to make sure you’re across all the concepts and techniques, these are the structured React courses we recommend.
  • React for Beginners [reactforbeginners] is the gold standard in React education, from React tutor extraordinaire Wes Bos.
  • React Express [react.express] is an all-in-one guide to React development.

Projects

You’ve got the basics – and perhaps even a little bit more. Here are some projects to take on to put that knowledge into practice:

Libraries and Tools

Newsletters

If all of this has helped you enter the world of React – here are some newsletters that will help you keep up to date with what’s new.
  • Versioning [sitepoint] – a daily newsletter, covers a variety of subjects including React, kinda looks like this post (text and links) and is written by me!
  • React Status [react.statuscode] – a weekly newsletter from the fine folks at Cooperpress.
  • React Newsletter [reactjsnewsletter] – a weekly newsletter, curated by Tyler McGinnis and Ean Platter.
  • react digest [reactdigest] – a weekly newsletter, five React links sent out every Monday.

What Did We Miss?

Finally, If you’ve found a great React resource or tool that belongs here – let us know in the form below. Happy React-ing. Reaction-ing. Re-acting. All of that stuff!
powered by Typeform

Frequently Asked Questions about Learning React

What are the prerequisites for learning React?

Before you start learning React, it’s important to have a solid understanding of JavaScript, as React is a JavaScript library. You should be comfortable with concepts like ES6 features, closures, asynchronous programming, and this keyword. HTML and CSS knowledge is also essential as you’ll be working with JSX, which is a syntax extension for JavaScript that resembles HTML.

How long does it take to learn React?

The time it takes to learn React can vary greatly depending on your current skill level and the amount of time you can dedicate to learning. If you’re already proficient in JavaScript, you could grasp the basics of React in a few weeks of dedicated study. However, mastering React and its ecosystem (like Redux and React Router) can take several months.

What resources are available for learning React?

There are numerous resources available for learning React. These include online tutorials, video courses, books, and documentation. The official React documentation is a great place to start. Websites like Codecademy and SitePoint offer interactive courses. You can also find many free tutorials on YouTube and blogs.

Why should I learn React?

React is one of the most popular JavaScript libraries for building user interfaces, particularly for single-page applications. It allows you to create reusable UI components. React is maintained by Facebook and a community of individual developers and companies, and is widely used in the industry. Learning React can open up numerous job opportunities.

Is React a library or a framework?

React is a JavaScript library, not a framework. The difference is that a library provides specific, isolated features that you can use as you see fit, while a framework provides a full suite of tools and features, but also imposes a specific way of doing things. React focuses on one thing – building user interfaces, and it does this very well.

What is JSX and why is it important in React?

JSX stands for JavaScript XML. It is a syntax extension for JavaScript, which allows you to write HTML-like code in your JavaScript code. It’s not necessary to use JSX to write React applications, but it’s recommended because it makes the code more readable and writeable.

What is the Virtual DOM in React?

The Virtual DOM (Document Object Model) is a concept introduced by React where a virtual representation of the UI is kept in memory and synced with the ‘real’ DOM through a process called reconciliation. This process, combined with the ability to easily create components, leads to high performance and a predictable codebase.

What is the difference between state and props in React?

In React, state and props are both JavaScript objects. State is a data structure that starts with a default value when a component mounts and then gets mutated over time, mostly as a result of user events. Props (short for properties) are variables passed to it by its parent component.

What is Redux and how is it related to React?

Redux is a predictable state container for JavaScript apps. It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. While it’s mostly used with React, it can be used with any other view library.

How can I start building projects with React?

Once you’ve grasped the basics of React, the best way to learn is by building projects. Start with something simple, like a to-do list or a weather app. As you get more comfortable, you can move on to more complex projects. This will not only help you understand React better, but also build your portfolio.

Adam RobertsAdam Roberts
View Author

Adam is SitePoint's head of newsletters, who mainly writes Versioning, a daily newsletter covering everything new and interesting in the world of web development. He has a beard and will talk to you about beer and Star Wars, if you let him.

FluxReactreactjs
Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week