-
Popularity: React is one of the most popular JavaScript libraries for building user interfaces, and is used by many well-known companies such as Facebook, Netflix, and Airbnb.
-
Job Opportunities: React is in high demand in the job market, and learning it can increase your chances of finding a job as a web developer.
-
Reusability: React allows you to create reusable UI components, which can save you a lot of time and effort when building complex applications.
-
Performance: React uses a virtual DOM, which helps to improve the performance of your application by reducing the number of DOM updates required.
-
Flexibility: React can be used to build a wide range of applications, including single-page applications, mobile apps, and desktop apps.
-
Large Community: React has a large and active community, which means that you can find answers to your questions and get support from other developers.
After completing this learning path you will be knowledgeable in:
- Building web applications
- React Components
- JSX
- State Management
- React Router
- Redux
- Testing
-
JavaScript: React is built on top of JavaScript, so having a good understanding of JavaScript fundamentals is essential. You should be comfortable with concepts like variables, functions, arrays, objects, loops, and conditional statements.
-
HTML: React is used to build user interfaces, so you should have a good understanding of HTML markup.
-
CSS: React also requires a good understanding of CSS styling and layout, as you'll be using it to style your components.
you can learn javascript here , HTML here , CSS here
You need a code editor,browser and Node.js to follow along this learning path. You can choose the code editor and browser of your choice. The preferred ones are listed below:
-
VS Code
Light-weight code editor by Microsoft with a large ecosystem of plugins to help your workflow
-
Google Chrome
A browser based on V8 JavaScript engine with developer tools.
-
Node.js
JavaScript runtime which helps you run JavaScript programs in your system.
Note: Install the stable version
🎓 Topics to Learn
- Variables and data types
- Functions
- Conditionals and loops
- Arrays and objects
- DOM manipulation
- Asynchronous JavaScript (AJAX, callbacks, promises)
🧑🏻💻 Learn from
Website Tutorials
Video Tutorials
Articles/Blogs
🛠️ Get into action
- Both of the above mentioned resources include a lot of activities. Try those activities to get a better understanding of JavaScript
🎓 Topics to Learn
- Create React App
- vite
- Next js
- Function Components
- Class Components
- JSX
- Props and States
- useState and useEffect Hooks
- setState and Component lifecycle methods
- Conditional Rendering
- Lists and keys
- Building simple forms
🧑🏻💻 Learn from
Videos
Articles/Blogs
🎓 Topics to Learn
- Context
- Higher order components
- Render Props
- Refs
- Error Boundaries
- Portals
- HTTP Requests
- GET
- Post
- Hooks
- useContext
- useReducer
- useRef
- useMemo
- useCallback
- Custom Hooks
🧑🏻💻 Learn from
Videos
- Advanced Topics on React
- Context
- React high order components
- React Render props
- Refs
- React Error Boundaries
- React Portal
- React HTTP Requests
- React Hooks
Articles/Blogs
🎓 Topics to Learn
- State Management
- Redux/Mobx
- Apollo client
- Routing
- React Routing
- Styling
- Styled Components / emotion
- Tailwind CSS
- Chakra UI/ Material UI / Ant Design
- Forms
- Formik
- React Hook Form
- Testing
- Jest + React testing library
- Cypress
- Misc
- Typescript
- Storybook
- React i18Next
- Firebase
- Practical React Libraries
🧑🏻💻 Learn from
Videos
- React Redux
- React Routing
- Styling components using emotion
- Tailwind in freecodecamp
- Chakra UI mini course
- Material ui
- React Ant design
- React Formik
- React Hook Form
- React testing library
- Cypress
- Typescript
- Storybook
- React i18Next
- Firebase)
Articles/Blogs
🛠️ Get into action
A few projects you can build to implement the concepts you have learned above:
- Todo App - A simple todo list app that allows users to add and delete tasks.
- This project will help beginners get a grasp of React's basic concepts such as components, state, and props.
- Repo for example
- Weather App - A weather app that displays the current weather conditions and forecast for a specific location.
- This project will require API integration and intermediate-level knowledge of React.
- Repo for example
- E-commerce Website - A full-fledged e-commerce website with features such as product listing, filtering, sorting, cart, and checkout.
- This project will require advanced-level knowledge of React, state management libraries like Redux or MobX, and backend integration.
- Repo for example
- Social Media Platform - A social media platform where users can create profiles, connect with friends, post updates, and comment on each other's posts.
- This project will require advanced-level knowledge of React, backend integration, and server-side rendering.
- Repo for example
- Real-Time Chat Application - A real-time chat application where users can communicate with each other in real-time.
- This project will require advanced-level knowledge of React, backend integration, WebSockets, and server-side rendering.
- Repo for example
You can checkout these additional resources to learn more about React JS
- React JS Documentation
- Timeline for learning React JS
- Developer productivity links from the react experts
Here are few project ideas you can try out, these are just an inspiration to get started. Try to learn and build ideas that come to your mind.
- Recipie App
- Fitness Tracker
- Movie streaming platform
- Online Marketplace
- Chat Application
- Music player
- Interactive map
- Drawing Application
- Language Learning App