Case Study: Building TeamCook in a week
Often I hear people saying that prototyping an idea should be done in days or so, else it’s bullshit. I don’t agree because it doesn’t make sense. This is just nurturing the startup myth of overnight success and blocking many people from actually taking their chances. It’s almost the first time I prototype in 8 days, and the only bullshit I see here is the technical debt created and the excessive fatigue.
Context
The idea can be summed up as Kitchen Stories meets Houseparty.
I remember a late-night ideation with friends after college where we threw ideas at first and then focused on what topics we knew so we could be relevant. On this night, I pitched an idea that’s a by-product of an older one I’ve had.
Basically, TeamCook (caught the joke?) is just about cooking in real time with a friend or a group of friends. One of them is the chef showing how to follow the recipe’s steps (or you can all be experimenting). At that time, we were not so excited by the idea, but with quarantine we got a momentum. When lockdown started, a friend started sending us videos of her cooking something different every day and teaching us how to do the same. So I thought: what if I revive this app idea?
Why?
Many reasons. The first: focus my mind every day during lockdown — going from 1 to 0 in a day was a huge punch. Another: master react-native and make sure my template is adaptive. This also let me learn more about WebRTC. Mastering new tech pushes back our capacities. And it’s always a good idea to keep learning.
The last part is that it forced me to start cooking and experiment.
How?
When I start working on a new idea, it’s good to research and look for similar apps on the App Store, Product Hunt, GitHub. The aim: simplify your tasks, look for different approaches, and improve UX/UI.
I looked for existing repos, libraries, documentation. Then I wrote a list of basic features required: authentication, friendship, recipes database, and live videoroom.
Cross-checking needs and research data, I gained a lot of time where I’d usually have wasted hours coding useless and overdone things.
Once those steps were done, I forked my react-native template, removed the unnecessary parts, and started adding UI and features. The tech stack is react-native for the app, Firebase for authentication, and a Node.js server for backend with Socket.io. I also had to find a recipe index, which was already done thanks to prior research.
Mockups of TeamCook running on an iPhone
Recipes are picked according to your phone’s local language in a specific index, both in French or English (as the fallback language).
Quickly, I added in this order: authentication, friendship system (search user and friend request), recipes (search and details), and then video WebRTC.
Problems
What’s missing now to be a real production-ready app: a true design, push notifications, and socket permissions.
WebRTC has been a real challenger. I read dozens of papers, docs, tutorials, and existing code to make it work.
Now what?
The prototype is now sleeping on my computer and on my phone. I’m not sure if it’s going to be released anytime soon as I’m taking a break from the maker universe. Maybe the app will be open-sourced, maybe it will be changed to adapt to the main app idea I’ve had for years. We’ll see.
Thanks for reading. Reach me on Twitter or by mail if you have feedback.