There are many ways to learn React, but perhaps, one of the most interesting ways is to learn through building projects. What makes project-based learning so special is that learners are able to analyze a problem from different angles and figure out different possible approaches. It also brings satisfaction as you’re able to see how your lines of code can directly impact your project. Last but not least, you’re able to build up a portfolio as you learn — two birds with one stone.
Here’s a list of React projects that can help you get started:
Beginner-level projects: You will need a basic understanding of React fundamentals
- Weather forecast website: Practice building a React app, implementing basic user interaction, and using Chart.js.
- Link shortener website: Practice taking simple inputs from users, calling a third-party API, and displaying the return value to the user.
- RSS feed reader website: Practice working with RSS feeds. If you choose to implement the parser yourself, you’ll also practice how to parse XML.
- Temperature converter website: Practice using inputs to interact with users and basic mathematical calculations. These skills serve as the basis of all websites with user interaction.
- Image search gallery: You’ll practice capturing user inputs, integrating with an external API (Unsplash), styling, and simple state management. These skills serve as the basis of production apps that integrate third-party APIs with user interaction.
- Daily sleep tracker web app: Learn end to end full stack web development. This includes front end, backend, UI, REST API, and databases.
- Vocabulary memorization website: Practice front-end development with state management and data comparison.
- Personal Youtube web player: Practice capturing user inputs, integrating with an external API (YouTube), styling, and simple state management. These skills serve as the basis of production apps that integrate third-party APIs with user interaction.
Hard projects: These are for the advanced. Some of the projects require knowledge of other languages.
- Invoicing and payment reminder mobile app: Build a clever full-stack app to address one of the trickiest challenges of working as a freelancer — invoicing clients and chasing up payment.
- Online photo collage tool: Practice handling image inputs from users and processing basic image tasks asynchronously. You’ll also build a web app with completely separate front-end, API, task queue, and optional storage components.
These project ideas are from DevProjects, a free community where users can learn programming by building projects. We have a growing library of projects across a variety of languages and tech stacks.
DevProjects is a way for those learning programming to gain insight into what projects look like when they enter the world of developers. To do this, we worked closely with senior developers and mentors to create projects that were able to bridge the learning gap between theory and real-world code. Each project spec is clear and limited in scope, mirroring what developers have to work with as either part of a dev team, or as a freelancer.
What’s your favorite React project?