Hi people. Here is another list of project ideas to build a portfolio, to prepare yourself for a real job, to improve your coding skills, etc.
Choose a platform/technology/language you like or want to employ.
Here are the ideas:
Museum virtual tours. A website or an app that gathers as many virtual museum tours as possible to watch all of them online. You could use a VR for that! Choose whatever platform you like.
Watch a movie online with friends even with different audio tracks and subtitles. Yes, we have glitchy apps to let you watch a movie with friends, but this one should let you choose the audio track, so you can watch one movie, but each of you can select an audio stream. It makes possible to learn a language for one and to relax and watch for another friend. The problem here is to decode and select audio streams programmatically in a web, but you can build a native app or addons.
Calculate the calories by a photo. It's mundane to write calories by a hand. It would be better to have the ability to take a photo of food and have an approximate calculation of the calories. Mobile app preferred. But, still, you can choose whatever you want - for example, a bot that receives a photo does calculations server-side and then send you a result.
Talk with people near you means you open a map and see with what people you can chat now, it's like a map-based social network.
Single service to handle authentication/authorization: just like Auth0 and other similar services, you need to build one that allows other apps use its API instead of writing the same auth-related logic again and again.
Encryption/decryption API/app: allows to encrypt/decrypt plain text or files. It's can be a web app or as an API.
Finance forecaster: you put your finance data you have currently and the app tries to forecast what will be your incomes/expenses in the future. Machine learning can be applied.
Banking system: a virtual bank, where you can send/receive payments from others. You can create a new digital currency to play with!
A 2D/3D map generator for games.
Photo storage where you can store your photos. Maybe self-hosted.
Pixelizing images tool that receives an image and makes it in a smaller resolution, to pixels.
Learning dwarf it's an app that sends you interesting/useful material every day in the topics you're interested in. For example, I choose "productivity", "programming" and "science" - the Dwarf will send me info from the related resources.
Git. Write your own Git. It will be a CLI tool.
BitTorrent alternative. Write your own alternative for BitTorrent protocol.
Universe simulator. But without a lot of subtleties, because you don't have such a computing power :) Like, write how the quarks should interact with each other.
Task tracker. A CLI tool that allows you to track tasks or projects.
- Friend: a bot that can respond to your messages, ask you something during a day. You can use cloud-based solutions for NLU or make your own!
- Random chat it's a bot that connect people randomly and they talk with each other without seeing the collocutor's profile.
- A word in a day: a bot that sends you a word in the language you're learning. You can choose a language, your proficiency level, how often you want to receive notifications and so on.
- A mood guesser: you send a song to the bot and it tries to guess your mood. Yes, you'll need to parse the song. It's a lot of work on the server-side.
- Photo recognizer helps you understand what it's in a pic.
- Game advisor helps you to find a game to play by pointing out specific keywords. E.g. "jungles", "forest", "simulator", "cars", "people".
- I bet on my knowledge connects two or more random people and ask them questions about science, literature, etc. Those who answer correctly will be rewarded. The bot then decides who is a winner looking at the people who accrued the biggest number of correct answers.
- Book splitter. You load a book in the bot, it splits the book into readable parts and will send you them, say, every day.
I share the other ideas in this community