A modern Android application for exploring, searching, and managing cocktail recipes. This project utilizes TheCocktailDB API to provide real-time drink data and instructions.
- Randomized Discovery: Generates a random cocktail on the landing screen.
- Categorized Exploration: Browse full lists of drinks based on official categories.
- Dual Search Engine:
- Search by drink name for specific recipes.
- Search by ingredient to find cocktails based on available stock.
- Local Persistence: A favorites system powered by
SharedPreferencesto save specific cocktails. - System Integration: Native Android Share Intent to export recipes as plain text.
| Component | Library / Framework |
|---|---|
| Language | Kotlin 2.1+ |
| UI Framework | Jetpack Compose (Material 3) |
| Networking | Retrofit 2 / OkHttp |
| JSON Parsing | GSON |
| Image Loading | Coil 3 |
| Navigation | Jetpack Navigation Compose |
The application follows a custom Cyber-Purple design language:
- Theme: Deep dark backgrounds (
#0F0F0F) with high-contrast purple accents (#9D4EDD). - Glassmorphism: Custom
Cardcomponents with 5% white opacity and subtle borders for a layered frosted-glass effect. - Motion:
AnimatedContentfor smooth transitions between loading states and data.- Staggered list entry animations using
AnimatedVisibilityand vertical slides. animateContentSizefor expandable UI elements.
- Android Studio Ladybug or later.
- JDK 17+.
- Active Internet connection for API calls.
- Clone the repository.
- Open the project in Android Studio.
- Sync Gradle files.
- Run the
appconfiguration on an emulator or physical device.
This application consumes the public TheCocktailDB API.
- Authentication: None (Developer Test Key "1").
- Endpoints:
random.php,list.php,search.php,filter.php,lookup.php.
Distributed under the MIT License. See LICENSE for more information.