The Backstory
This project was born out of a college course on “Advanced Web Development.” The assignment was simple: build a recipe app. But, as someone who had already built a Cocktail Machine, I thought, “Why not make it about cocktails?” The idea was set, but, true to form, I procrastinated until just two weeks before the deadline. What followed were nine intense days of coding, designing, and documenting—an experience that was both exhausting and exhilarating. I was in the zone, hyper-focused, and determined to deliver something I could be proud of. The result? A working, minimalistic cocktail recipe PWA that I submitted just in time.
Features & Highlights

- browse existing and popular cocktails and save them to your personal list thanks to an external API
- filter cocktails by ingredients, alcoholic or non alcoholic, glass type
- optimized external requests thanks to extensive caching
- lazy load more recipes on scroll
- manage your own cocktail recipes and ingredients
- create new cocktail recipes and connect ingredients
- create new ingredients
- delete protection for ingredients with dependencies
- mobile optimized
Implementation and Design Details
From the start, I wanted the application to be more than just a list of recipes. It needed to be fast, modern, and easy to use—something I would actually want to use myself. I chose React for the frontend to ensure a smooth, responsive user experience, and Express.js for the backend to keep things simple and flexible. MySQL was the natural choice for structured data, and Docker Compose tied everything together for easy deployment.
