Pure React cover Updated for 2017

A step-by-step guide to mastering React.

“I’m stuck on the tutorials”

Even after sifting through countless tutorials and videos, you still can’t cobble together your own app.

It’s maddening.

One second you’re nodding along, sure that you understand. The next, you’re staring at a blinking cursor wondering what to type.

The knowledge is like a mirage. It makes sense in theory, right up until you try to use it.

Frustrating editor

There’s so much to learn!

And it’s not just that the knowledge is slippery. There’s also a never-ending list of libraries and tools to learn: Webpack, Babel, React Router, Redux, Sagas, Thunks, AJAX, Jest, …

New libraries appear weekly, trumpeted in newsletters and on Twitter. “Oh crap, do I need to learn styled-components now? What happened to CSS?” You start to silently wish that maybe NPM would disappear overnight. Maybe they don’t have backups. Maybe people will forget.

Are people actually using all this stuff? To build real apps? Sometimes it seems like a big joke. But nobody’s laughing, and nobody seems to be letting on.

Most advice is worth the price you paid…

There’s a lot of advice out there. A lot of it starts with “clone this boilerplate – it has everything you need!” and ends with “React is so easy. Look how easy this is.”

You’re about to hurl a chair across the room, and all the internet is talking about is how great React is, and if you just make one more TODO app you’ll finally get it.

What if you did things differently?

What if I told you… you can break the rules? That you don’t need all that stuff to make an app.

Here’s a simplified clone of Slack:

A Slack clone built with only React

It’s got channels and users. You can send messages privately, or to individual channels.

Would you guess that this was made entirely with React?

It uses regular CSS. I didn’t have to make a Webpack config. I didn’t mess around with React Router. And Redux is nowhere in sight.

I didn’t even hook it up to a real server. The messages and users are fake.

Choose Your Own Difficulty Setting

“Wait, what?” What good is an app with fake data?

I’ll tell you: it’s the perfect platform for learning. Add or remove features at will to tune your practice.

This strategy is awesome because you can isolate one thing (React, in this case) and learn it cold. Then when you’re ready, move on to the next layer.

Think about it: when you learned to ride a bicycle, did you bike along a busy highway into town on your first day? No, you probably stayed in the driveway.

Did anyone hand you some bowling pins and say, “Here, learn to juggle at the same time. That’s what the pros at the circus do.” No, you just focused on not falling over.

And you probably had training wheels.

An easier way to learn React.

The key to truly learning and understanding React is to tackle it all by itself, and in bite-sized chunks. That’s what makes the knowledge stick. That’s the “secret.”

My book, Pure React, lays out a guided, step-by-step roadmap for learning React quickly and in the right order. It breaks everything down into chunks for you, and explains each one so you really understand.

You’ll come to fully understand React’s one-way data flow, bend its JSX syntax to your will, and master the use of props and state.

Build small focused apps, and learn by doing.

You’ll get hands-on practice by building a series of small components and micro apps –- no big monolithic app here. The bite-size apps will have you reviewing concepts until they’re second nature.

The included exercises will have you writing your own code right from the start –- this isn’t a “copy, paste, watch it run” tutorial.

Learn to turn mockups and sketches directly into code and learn to “think in components.”

And I promise I won’t make you write another TODO app. We’ve all had enough of those.

Here are a few of the apps you’ll be building on your own by the end:

Simplified clones of Slack, Hacker News, Pinterest, and Reddit

Learn the fundamentals first.

By focusing purely on React, you can go deep and fully master it. You’ll come away with the perfect foundation to build on.

When you’re done, you’ll be able to evaluate libraries on their merit, and add them as you see fit. What’s more, you can apply the process you learn in the book to master those other libraries too.

What does the book cover?

  • Easy project setup with Create React App (you’ll be running code within minutes)
  • Debugging strategies for when things go wrong
  • Mastering JSX syntax, including “if”s, loops, and dynamic child components
  • Using props to make reusable components, and to communicate between them
  • How PropTypes can save you debugging time and help “future you” remember how to use the components you wrote
  • Using the “children” prop to render dynamic content
  • How to write React in modern ES6 Javascript, with a gentle introduction to ES6 syntax
  • How input controls work in React (controlled and uncontrolled)
  • Where and how to properly use component state in a React application
  • Stateful vs Stateless components
  • The lifecycle of a component, and how to use it to your advantage

The book has at least 11 step-by-step examples, as well as 25 exercises to reinforce your knowledge.

You’ll start off with some simple components (tweets, dialog boxes, emails) and grow into more complex mini-apps (simplified versions of Trello, Hacker News, Pinterest, Reddit, and Slack).

Tweets, Trello, Shopping List, and a Github clone

“Seems nice. Has anyone tried it?”

We’re so used to having Amazon reviews at our fingertips today that it feels weird to buy something before reading reviews.

294 people have bought the book so far. Here are some of the things they had to say:

Pure React wasn't just very beginner friendly, it contained very practical tips. This was one of the most important book features for me. I find it very important that the book does NOT try to teach Redux, and other "friends" of React. It is laser focused on React.

What this has done for me is understanding the fundamentals. This has made it a breeze to pick up other React-related frameworks, and libraries. To be honest, I think Pure React is the best place for a beginner to start.

If I could, I'd put it in the hands of every beginner.

It put me in a good place for my new job. The exercises were excellent.

Liam Shaw
Liam Shaw

As far as I am concerned, even the intro which is free is worth the $39.

Isaac Simantov

I came to know roughly what components I need to build just by looking at the design and imagining how data flows from the root component to the children components. I would recommend the book to everyone that already had a course for beginners but they want to deepen their knowledge and really understand React by building basic UIs.

Basically everyone that wants to get paid by building apps with React.

I just wanted to tell you that I started going through your book over the last couple of days and it is so so so so awesome !! Thank you for breaking down everything and explaining each and every doubt that comes to the mind !

Arumita De

I was glad that it appeared to be simple to set up a project (create-react-app). I liked it even more that you advised to throw everything away and start with just an empty index.js.

I would certainly recommend the book, especially to old guys like me, who may get overwhelmed by the next hype they might need to stay in touch with :-)

Jan Willem

I would recommend this book to anyone who wants to learn React. This book has removed the complexity of many technologies used together. It focuses on one specific topic and gradually layers a new technology/strategy as you become proficient with one thing.

Peter Fields

It got me on my feet with your thorny insistence that I actually type the damned examples out -- something I hadn't done before.

What I didn't realize this would do was drastically reduce my time-to-MVP for the first complex React project I'd build. It also gave me a ready-made repo of copy/paste examples I could use to build my first project.

I would recommend it to anybody who is a professional dev, looking to learn React.

Jordan Prince
Jordan Prince

Loved it! Very well written and put together. Love that you focused only on React. Wish I had stumbled onto your book first before I messed around with all those scary "boilerplate" projects.

John Lyon-Smith
John Lyon-Smith

I think your book is amazing. I'm really learning how to use react! I almost gave up several times using other books!

Y'Eli Buonya
Y'Eli Buonya

It was perfect. I had tried to go directly into several of the large boilerplate projects available and, unsurprisingly, was overwhelmed. Going through your book, making very small projects, was exactly what I needed. I wish I had bought it sooner!

George Cox
George Cox

Just wanted to say -- it has really helped me to get started with React, and I'm now really enjoying it as a new way of approaching web development. The book was really well written and structured, and went at an good pace. Also, really appreciate you getting back to my questions/issues whilst going through it!

Paul Child

I'm very happy with your book and I find it very clear. The way you approach React is definitely the best I've seen so far!

Paolo Importuni

Buy Pure React

Learning new skills is one of the best ways to invest in yourself.

Knowing React can set you up for a promotion, or put you in position to get hired for a new job.

You could use React to finally build that startup you’ve been wanting to do.

Or if you’re a designer, knowing React can help you communicate with the developers and even do some of the work yourself (so you know it’s done right).

Whatever the case, I want you to be totally happy with your purchase. If you’re not, just email me for a full refund. The number of refunds issued to date is something like 2, though, so I don’t think you’ll be disappointed :)

The Complete Package

If you want to work through the examples and exercises and be sure you’re doing it right, get the Complete Package. It’s the most popular option.

The Book + Code

Complete Package Items

  • 158 pages
  • PDF, EPUB, and MOBI
  • 11 examples and 25 exercises
  • Executable code for all of them
Because you can learn React. You just need a clear path to follow.

The Team Package

If you’re looking to get your team up to speed with React as quickly as possible, this is the package for you.

It includes a 10-person license for everything in the Complete Package, and saves you 50% over the cost of buying them individually.

The Book + Code

10 licenses

Team Package Items

  • 10 person license
  • 158 pages
  • PDF, EPUB, and MOBI
  • 11 examples and 25 exercises
  • Executable code for all of them
Because you and your team can learn React, and quickly. All you need is a proven path to follow.

Just The Book

If you just want the book, or if money is tight, this is the one for you.

The Book

  • 158 pages
  • PDF, EPUB, and MOBI
  • 11 examples and 25 exercises
Because you can learn React. You just need a clear path forward.

Still Not Sure?

I get it, it’s hard to know whether a random book you found online will actually help. You can download 2 free sample chapters to see if it’s right for you.

About the Author


Hi! I’m Dave Ceddia (@dceddia). I’ve been writing software professionally for over 10 years, and React is my favorite technology by far. I love building UIs because I get to see my work come to life. I teach about React and JS on my blog and through books like this one.


Q: What format does the book come in?

The book comes in PDF, EPUB, and MOBI formats. The EPUB/MOBI versions have hand-formatted code optimized for small screens. Let me tell you, you have not lived until you have hand-formatted 65 code examples for 36-character-wide screens 😄

Q: Does the book cover Redux? Webpack? AJAX? Testing?

Nope. Here’s why: the best way to master React is to focus on just React first. Once you have the fundamentals down, you’ll be in a much better place to learn the rest.

Many books, courses, and blog posts try to cover the entire stack, end-to-end. It’s easy to end up learning a tiny bit of everything, but never fully grasping how the pieces fit together.

And while writing tests in a test-driven style can be a great way to learn for some people, I don’t think it’s the right choice for everyone.

This book focuses purely on React.

Q: Should I get the Complete Package?

The Complete Package includes answers for each of the 25 exercises in the book, as well as code for the examples throughout. It’s a great choice if you want to know you’re on the right track as you’re working through the exercises. It’s not a ton more money, and if you make any typos you can check the code instead of hunting for 20 minutes.

Q: What if I’m unhappy with the book?

There is a 100% money-back guarantee. Buy the book, try it out, and if you aren’t happy, simply email me and I’ll refund your purchase.

Q: Why didn’t you answer my question?

If you have any questions, shoot me an email at dave@daveceddia.com.