About the React Handbook

👋 Hey there

First of all, thanks for visiting this project. My name is Eric, and I created the initial version of this website I call the React Handbook.

My current goal for this website is to cover the very nuanced details of working with React in production environments. I have come to understand that the React core team can't (and shouldn't) focus their time on documenting the ecosystem without appearing to show favoritism for certain libraries/authors in open-source. Some more examples of what I think is important to know about working with React, but that is not covered in the docs are:

  • the vast ecosystem (libraries, tools, etc.)
  • recommended / recognizable best practices
  • off-site educational material (courses, videos, articles, podcasts, training, etc.)
    • MOST of what we recommend/link to is free, but where I do recommend paid resources I clearly indicate it (and I do not receive commissions from the authors, I doubt they even know who I am)

I do not consider this website material to be "gaps" in the React docs, but I do wonder if that's the best way to explain what we are trying to do. I respect the React team and the wonderful documentation they've created, I just believe they cannot go into the depth of community/ecosystem libraries/tools/resources without appearing to show favoritism or losing sight of their primary focus (which is the underlying UI library, React itself).

What I Need From The React Community (You!)

As of right now, I mostly curate the entire website and allow access on a case-by-case basis when it comes to significantly contributing content/material to the handbook (not just bugfixes/refactors and things we request in our Issues tab). The idea is that the more the community gets behind this idea and joins, the less I will be solely in charge of what is on the site. There will always need to be some degree of experienced curation, but my hope is that the community will grow to the point that it NEEDS to expand beyond just myself in order to have the best ideas and content. Here's how you (as someone working with React) can help me out, if you're interested:

  1. Validation that the topics covered and the recommended approaches generally are agreed upon as best practices by the community.
    This is specifically helpful if you are an expert/experienced in a particular facet of development (styling/CSS as an example) - I'm not looking for people to read in detail the entire website, but more like skip to the spots where THEY also have expertise and tell me how I did or if you would change anything

  2. Provide feedback to me for sections that are confusing, over-explained, or still not clear by the end of an article.
    This is helpful from the exact opposite lens as point #1 above - if you are an expert in different facets of development than what I try to cover, but you really need to understand something you haven't ever dove into (testing or state-management for example) it's very helpful to get feedback when you still did not understand a topic very well after going through our material

  3. Help me out with small or large issues encountered in the maintenance of this website.
    While I don't expect anyone to clean up my dirty work, I have been logging "tasks" or things that need to get done that might not require a seasoned/expert opinion and are just generally related more to site maintenance. If you're looking for more of those green squares in your GH profile but can't find things to work on, well I'd greatly appreciate it with these tasks. Some or mundane things like typos/spell-checks or text formatting, while others might be more interesting such as large component refactors (more realistic to professional React development).

Core Team

Join 10+ other contributors, and help us maintain the website as an example of what a solid Next.js application codebase can look like.

You'll notice there's not much in-depth original content on this website. We mostly write a summary of a feature/library and then link off-site to the documentation for you to go and learn that technology in detail.

TLDR: We like pointing people in the right direction.

FAQResponse
Why would I read this instead of the React documentation?We definitely recommend starting with the Official React Documentation before coming here, as it helps to learn to "think in React" before you set off to build an app. If you've never built a web app before there are some starting points we can recommend, but this guide might be a little too advanced for you.
What is the goal of this guide?Essentially, to be the go-to bookmark for engineers building React applications. To create a community around the concept of scalable, maintainable React code and how to achieve it. Then, document it (hence, this guide).
Will we ever author original content/tutorials or only ever link to others?Maybe one day, but it's not on our agenda right now.
What was the initial need for this guide?I (Eric Diviney) worked at a consulting company where we built web apps and products for enterprise companies. Not everyone was required to know React - but the nature of enterprise consulting meant there were always projects we needed to staff, and therefore we always had people learning React at different times. We also did not have a formal learning path for anyone to follow, so it wasn't an organized approach to education in a specific vertical (React). I made the first version of this guide to bring as many people as possible up to speed with modern web development practices.