What is react
React is a JavaScript library used for creating dynamic and interactive user interfaces through reusable components. Developed by Facebook, it simplifies the process of managing application state and updating the user interface efficiently.
This lesson will offer a concise overview of React and its key features.
Why React?
React was introduced in 2013, transforming the landscape of web development.
Prior to its component-based architecture, building web applications was complex and cumbersome.
If you make charts for the web and don't know react, you're missing out!
This is particularly evident in applications that involve data visualization. The ability to create reusable components, like a Scatterplot
component, that can be utilized throughout your app, is a game-changer for your development process.
If you're building a data visualization application, React offers everything you need:
- Robust state management, perfectly suited for dynamic data.
- A component-driven approach, ideal for creating interactive visualizations.
- Extensive community support and comprehensive documentation.
Expected knowledge
This course focuses on Data Visualization using React.
We won’t cover the basics of React, as that’s a vast topic deserving its own dedicated course! For a solid introduction, check out this intro by Codecademy.
Basically, you should just be able to understand what's happening in this sandbox:
That's it, no need to be a React expert.
Even seasoned developers will find valuable insights here: creating visualizations with React and D3 involves specialized knowledge that differs significantly from typical UI development.
Lastly, you don’t need prior experience with D3 to get started! We’ll use it sparingly and provide a thorough explanation of how it works.
🤔Alternatives
While React is a leading choice for building user interfaces, there are notable alternatives, primarily Vue and Angular. Additionally, Svelte has gained considerable traction within the data visualization community.
However, React's popularity is significantly larger, as illustrated in the graph below from npmtrends.
For further insights, you can explore a variety of metrics on this repository. It's clear to me that React has established itself as the de-facto library for creating user interfaces and is here to stay.
Evolution of the number of downloads for React (green), Angular, Vue and Svelte