Are you a fan of project-based learning? Here are 4 ideas for your next practice session.
Project-based learning is one of the most recommended approaches to taking up new programming languages or libraries. In this article, we'll go through a list of project ideas I curated that you can use for your next practice session.
Kenneth Angelo Reyes
Project-based learning is one of the most recommended approaches to taking up new programming languages or libraries.
Most of the time, it's tough to think of the next project you'd like to play around with. Well, I got you! I have curated a list of project ideas you can use for your next practice session.
For each idea, we'll explore the following:
- The Requirements
- The Concepts You'll Practice
Additionally, each project is composed of these 3 components:
- Frontend
- APIs
- Database
Lastly, I won't be prescribing any specific language or platform to use for these projects. I'd recommend some 3rd party APIs for integration, but I'll leave this decision to you.
Now that all of that's out of the way, let's go through the list!
A Stripped-Down Instagram Clone
Requirements:
- Allow users to upload photos
- Allow users to upvote or downvote photos of other users
- Setup a user's feed and prioritize showing photos of users they upvoted the most
Concepts you'll practice:
- User management
- Image optimization - displaying photos in different sizes and in multiple places requires optimization. Each image should be duplicated and resized according to the different display requirements.
- Implementing a social network - learn how to model a social network and how to navigate and analyze that data
Event Registration Platform
Requirements:
- Allow users to view and search upcoming events
- Allow users to register for any event by submitting a simple form
- Notify users via email 3 days and 1 day before any event they registered to.
Concepts you'll practice:
- Simple and advanced search + Pagination - learn how to implement these via an API is one of the most common concepts that you'll need to be familiar with
- 3rd Party Integration - learn how to integrate with a 3rd Party Service like MailChimp for email services
Group Chat App
Requirements:
- Allow anonymous users to start a chat room and share the room's URL with their friends
- Allow anonymous users to join a chat room by directly going to a room's URL
Concepts you'll practice:
- Real-time Communications - Learn how to integrate into a real-time communication platform like Socket.io
Concert Ticketing Platform
Features:
- Allow users to buy a number of seats for an upcoming concert
- Once the user starts the checkout process, the user's seat selection will be temporarily reserved
- The payment needs to be settled within 15 mins
- If the user failed to complete payment by 15 minutes, the selected seats will be released for other users to take. Then, the user will need to try again.
Concepts you'll practice:
- Reservation Logic - learn how to implement a reservation system with support for expiring tickets
- 3rd Party Integration - learn how to integrate with a 3rd party payment platform like Stripe
Summary
So, that's it! Did you like any of the projects I listed? Which one will you start working on?
Glad that you've reached the end of this post. Let me know if you have other project ideas that other devs should pick up by sending them in the comments.
Hey, you! Follow me on Twitter!
Cover Photo by Lagos Techie on Unsplash
Upvote
Kenneth Angelo Reyes
I build apps then I write about the experience. All tweets are my own personal thoughts and opinions.

Related Articles