Learning React. Where to start?

React is one of the hottest things out there now and it seems like it’s here to stay. What is React? It’s a JavaScript library for building user interfaces.

Although I’m mostly a backend developer, I decided to dive into React and learn something new. The question is, where to start? What documentation should I read? Should I do a tutorial? Which one(s)? And what’s all these other things I keep hearing about: ES6, JSX, Babel, Redux, Webpack…? 😱


🎓 Step 1 — Reading

Depending on your JavaScript skills, it may be good to refresh some of the basics of the language. Here’s a great place to do that:
A re-introduction to JavaScript (JS tutorial)

The first place where you should go is the official React site: https://facebook.github.io/react/. Here I recommend starting with the Docs and read the Quick Start section (you can leave the Advanced Guides for later). After reading this you should understand the basics of React: rendering elements, what is a component, handling events, etc.


✏️ Step 2 — Tutorial

After all that reading I’m sure you want to start writing some code. On the official website there’s a Tutorial where you build a tic-tac-toe game. It’s very simple and you can apply what you learned when reading the Docs.


💻 Step 3 — Tiny web app

After finishing the tutorial, my suggestion is to build a tiny web app from scratch. Why? A small app gives you a sense of accomplishment and here is where you’ll actually learn by doing.

Don’t have ideas about what to build? Here are 8 ideas for a tiny web app.

One of the quickest ways to get started is to use a starter project like create-react-app. This will set everything up so you can start focusing on your app.

You can check out my first tiny web app in React on GitHub: https://github.com/paulosilva86/shopping-list.


Conclusion

I haven’t had this much fun with JavaScript in a while. React really feels like a great way to build the client-side of a web app. Hope this helps you get started with React. Now it’s up to you (and me) to explore more advanced topics!

If you’re interested in a real world web app that uses React you can read more about it here: ClanHR: booting the frontend.



Thanks for reading. Hit recommend 💚 below if you liked what you read. This way it will reach more people. You can follow me, Paulo Silva, on Medium and on Twitter @paulosilva86.

Like what you read? Give Paulo Silva a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.