Preeda App
At first, I tried to host the app's data on a server, which I thought would make things easier and more dynamic. However, I quickly became frustrated with how slow the Preeda server was when actually using it in practice. It caused delays when accessing cocktail recipes, and the experience became clunky. On top of that, hosting the server myself was a struggle, relying on home Wi-Fi was unreliable, and the whole setup felt like more work than it was worth. It became clear that managing a server just to store and serve some data wasn't the best approach.
That’s when I decided to simplify things. Instead of dealing with the headache of a server, I switched to using Google Sheets API directly through the app. It allowed me to manage and update the cocktail recipes in a familiar environment (Google Sheets), while the app handled all the data conversion and presentation. This stripped-down, more efficient setup cut out the need for a server entirely, while still providing all the functionality we needed.
The result is this Android App, a tool that bartenders can use to quickly search, browse, and view recipes in real time. It’s fast, reliable, and much easier to maintain, all while ensuring that the data is always up-to-date.
Looking back, I’m glad I decided to pivot away from the complex server-based solution. By sticking with the bare-bones idea of using the Sheets API, the app is now far more practical and efficient. This experience taught me that sometimes, the simpler solution is the best one, and it’s something the future bartenders of Preeda will use every day to keep our bartending operations running smoothly.
Features:
Cocktail Management:
Real-Time Recipe Access: Browse and search for cocktails with instant access to recipes and instructions.
Detailed Cocktail Information: View details like ingredients, garnishes, preparation steps, and even photos of the drinks for easy identification.
Search and Filter: Quickly find cocktails by searching by name or filtering by genre, ingredient, or drink type.
Google Sheets Integration: The app fetches all data from a Google Sheets file, making it easy to update and maintain recipes without needing to handle a server.
Multi-Platform Accessibility: Available on Android and other platforms using Flutter, making it easy for bartenders to access from any device.
How to Use:
Cocktail Management:
Browse the collection of cocktails by selecting a genre or searching by name or ingredient. Tap on any cocktail to view its full recipe, including the ingredients, garnish, and instructions.
View Cocktail Details:
For each cocktail, you can see its photo, the required glass type, main ingredients, and detailed instructions. This makes it easy to prepare the drink just the way it’s meant to be served.
Search for Cocktails:
Use the search bar to find a cocktail by typing its name or one of its ingredients. This feature helps bartenders quickly locate a recipe based on what they have on hand.
Filter by Genre:
Select a cocktail genre (like Preeda Signature, Classic Cocktails, Alcohol-Free, etc.) to filter the list and find the drink you want to make.
Update Recipes via Google Sheets:
The app pulls all data from a Google Sheets file. To update a cocktail, simply edit the Google Sheet, and the app will reflect those changes immediately, no need for complex server management.
Technologies Used:
Flutter Framework: Utilized for cross-platform development, allowing the app to run on Android and other platforms seamlessly with a single codebase.
Google Sheets Integration: The app uses the Google Sheets API to dynamically pull cocktail data, keeping the recipes up-to-date without needing a server.
Image Handling: The app fetches cocktail images directly from the URLs provided in the Google Sheets, displaying them in the UI for easy identification.
Search and Filtering: Efficiently handles search queries and filters using Dart's built-in functions, allowing users to find drinks based on names or ingredients.
Networking: HTTP requests are handled using the
http
package to fetch data from Google Sheets, ensuring a smooth and reliable experience.