> For the complete documentation index, see [llms.txt](https://haonm.gitbook.io/react-the-complete-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://haonm.gitbook.io/react-the-complete-guide/master.md).

# What you'll learn

**What's this course about?**

Learn React or dive deeper into it. Learn the theory, solve assignments, practice in demo projects and build one big application which is improved throughout the course: The Burger Builder!

**More details please!**

JavaScript is the **major driver** of modern web applications since it's the only programming language which runs in the browser and hence allows you to provide highly reactive apps. You'll be able to achieve mobile-app like user experiences in the web.

But using JavaScript **can be challenging** - it quickly becomes overwhelming to create a nice web app with vanilla JavaScript and jQuery only.

**React to the rescue!**&#x20;

**React is all about components** - basically custom HTML elements - with which you can quickly build amazing and powerful web apps. Just build a component once, configure it to your needs, dynamically pass data into it (or listen to your own events!) and re-use it as often as needed.

Need to display a list of users in your app? It's as simple as creating a "User" component and outputting it as often as needed.

This course will **start at the very basics** and explain what exactly React is and how you may use it (and for which kind of apps). Thereafter, we'll go all the way **from basic to advanced**. We'll not just scratch the surface but dive deeply into React as well as popular libraries like react-router and Redux.&#x20;

By the end of the course, you can build amazing React (single page) applications!

A detailed list with the course content can be found below.

**Who's teaching you in this course?**

My name is Maximilian Schwarzmüller, I'm a freelance web developer and worked with React in many projects. I'm also a 5-star rated instructor here on Udemy. I cover React's most popular alternatives - Vue and Angular - as well as many other topics. I know what I'm talking about and I know where the pain points can be found.

It's my goal to get you started with React as quick as possible and ensure your success. But I don't just focus on students getting started. I want everyone to benefit from my courses, that's why we'll dive deeply into React and why I made sure to also share knowledge that's helpful to advanced React developers.&#x20;

**Is this course for you?**

This course is for you if ...

* ...you're just getting started with frontend/ JavaScript development and only got the JS basics set (no prior React or other framework experience is required!)
* ...you're experienced with Angular or Vue but want to dive into React
* ...know the React basics but want to refresh them and/ or dive deeper
* ...already worked quite a bit with React but want to dive deeper and see it all come together in a bigger app

**What should you bring to succeed in that course?**

* HTML + CSS + JavaScript knowledge is required. You don't need to be an expert but the basics need to be set
* NO advanced JavaScript knowledge is required, though you'll be able to move even quicker through the course if you know next-gen JavaScript features like ES6 Arrow functions. **A short refresher about the most important next-gen features is provided in the course though.**

**What's inside the course?**

* The "What", "Why" and "How"
* React Basics (Base features, syntax and concepts)
* Managing state with class-based components and React Hooks
* How to output lists and conditional content
* Styling of React components
* A deep dive into the internals of React and advanced component features
* How to access Http content from within React apps (AJAX)
* Redux, Redux, Redux ... from basics to advanced!
* Forms and form validation in React apps
* Authentication
* An introduction to unit testing
* An introduction to Next.js
* React app deployment instructions
* ...and much more!

**Who this course is for:**

* Students who want to learn how to build reactive and fast web apps
* Anyone who's interested in learning an extremely popular technology used by leading tech companies like Netflix
* Students who want to take their web development skills to the next level and learn a future-proof technology
