A cocktail is a symphony of gustatory, olfactory, and visual pleasure, garnished with fun. As a newbie to the mixology world, keen to expand my cocktail repertoire, I sought some help in devising a few new ones. So, I vibe-coded a personalized mixology app. Time to crack open the drinks cabinet!
I recently built a personalized recipe-generator app. It exemplified the remarkable ability of Claude, the Anthropic LLM, to vibe-code brand-new programs instructed solely by a natural language prompt. I learned a lot from the experience. In particular, it honed my skill at previsualizing how I would use the app, therefore how its user interface should look.
The recipe-generator app works like a charm, and has already begun to expand my cooking repertoire.
So, it did not take long to realize I could take the same approach to vibe-coding a complementary app. This time the focus would be on recipes for cocktails – helping me delve deeper into the fascinating world of mixology.

A choice to be made
I saw several ways I could design such an app. One would be to start with well-known, named cocktails, such as Manhattans, Negronis or Margaritas, creating new variants of these famous concoctions. The other, which I chose, would be to start with the underlying spirits, such as whisky, gin, or tequila, and build from there.
I have included the prompt I eventually devised further below, but here is a screen shot of the final app, with my choices entered for a simple example.

The app has two input fields, each with extensive drop-down lists of options for primary and secondary spirits. In this case I chose a wild combination of Sake and blackcurrant liqueur.
Once populated, the app auto-generates a set of finishes for sour, sweet, and bitter ingredients. To complement my spirit choices, the app chose yuzu juice, honey syrup, and cardamom bitters. Yum!
As with my recipe-generator, the output of the app is a saved prompt. When I hit the ‘Build my Cocktail’ button, it generates and places the prompt into the clipboard. When pasted into a Claude chat, it generates a detailed recipe.
Here’s the recipe
The Kyoto Dusk
A hauntingly beautiful East-meets-West cocktail — the delicate rice wine grace of sake mingles with deep blackcurrant, bright yuzu, and an exotic whisper of cardamom.
Glass: Nick & Nora or coupe
Ingredients
- 60ml dry junmai sake
- 25ml blackcurrant liqueur (Cassis)
- 20ml fresh yuzu juice
- 12ml honey syrup
- 2 dashes cardamom bitters
Method: Shake
Instructions
- Chill your glass in the freezer for at least 5 minutes, or fill with ice water while you prepare the cocktail.
- Combine all ingredients in a cocktail shaker and add a generous scoop of ice.
- Shake firmly for 12–15 seconds — sake is more delicate than spirits so don’t over-dilute; stop when the shaker is well-frosted.
- Discard the ice water from your glass, then double-strain through a fine mesh strainer into the chilled coupe.
Garnish: A thin round slice of yuzu or lemon floated on the surface, with a single fresh blackcurrant or a few frozen ones dropped alongside it. If neither is available, a small twist of lemon peel expressed over the glass adds a lovely aromatic lift.
And there’s more
A couple of notes on this one: sake has a lower ABV than most spirits, so the cassis plays a more prominent role than it typically would — the result is something closer to a refined, adult fruit cocktail than a booze-forward drink, which makes it wonderful as an aperitif. The cardamom bitters are the secret weapon here, tying the Japanese and European elements together in a way that feels completely cohesive. Kanpai! 🍶

Keith’s initial prompt
I would like to build a mixology app, to expand the range of cocktails I can make. For the entry fields, please include a drop down list of options for the primary liquor ingredient, such as rum, gin, rye whisky, tequila etc. Also include a drop down list of secondary liquor ingredients, such as dry vermouth, Campari, St Germaine, Blackcurrant liqueur etc. After making these choices, I would like the app to suggest options to select from lists of additional common ingredients. One list would be a sour ingredient, such as lime, lemon, or grapefruit juice. A further list would be a sweet ingredient, such as simple syrup, or sweet vermouth. A final list would be from a selection of bitters. I would like the user interface to reflect the ambience of a cocktail bar, with a dark background and pastel highlights, including pink. Once we have a finalized app, I would like to download an html file of the app, which I can keep on my computer. Let me know if this is clear, or if you need additional information. Thank you!
Claude’s response
That's a wonderfully clear brief — I love the project! Here's a fully interactive mixology app with cocktail bar ambience. I'll build it inline first so you can try it, and then we'll create the downloadable HTML file.
Give it a try! Here's how it works:
- Pick your primary spirit — the dropdown covers 14 options from rum and gin to sake and cachaça
- Optionally choose a secondary spirit or liqueur — 19 options including Campari, St-Germain, Cassis, and more
- Hit Suggest Ingredients — it will auto-recommend a sour, sweet, and bitters pairing based on your spirit, which you can tweak
- Hit Make My Cocktail — the AI bartender generates a full recipe with name, measurements, method, and garnish
Once you're happy with how it feels, just say the word and I'll generate the downloadable HTML file for you to keep on your computer. I can also make any adjustments — more spirits, different ingredient options, tweaks to the colour scheme, etc.
Keith’s observations
- As with my recipe generator app, it required several further exchanges between Claude and me in order to finalize the app. I am happy to share more of our dialog if anyone is interested.
- The key insight was to realize that like the earlier recipe app, the simplest way to achieve a fully functional mixology app was to use a combination of the app and a Claude chat to generate a new recipe.
- Thus, using the app to create a prompt, which I subsequently pasted into a Claude chat, meant that Claude could avail itself of the full resources of the Anthropic API to devise the recipe.
- As with all my previous apps, Claude exceeded expectations by populating the three input fields with a much richer set of options than I had imagined.


Leave a Reply