Skip to content

fbaldhagen/recipe-recommendr-android

Repository files navigation

🍹 RecipeRecommendr

An Android app for discovering cocktail recipes, tracking your ingredient inventory, and finding out what you can make with what you have.

Status: Stable hobby project


Screenshots


Features

🍸 Drinks & Recipes

  • Browse a bundled catalogue of cocktail recipes
  • Full recipe view with ingredients and instructions
  • Save favourites and add drinks to a personal list
  • Search and filter drinks by category

🧪 Inventory

  • Track which ingredients you currently have in stock
  • See which drinks you can make right now with your inventory
  • See drinks you're closest to being able to make — so you know what to grab next

🛒 Shopping List

  • Add missing ingredients directly to a shopping list
  • Check off items and mark them as purchased to update your inventory automatically
  • Add notes to individual shopping items

🗺️ Map


Architecture

RecipeRecommendr is a single-module app following Clean Architecture principles:

data/         → Room DB, entities, DAOs, mappers, remote (Overpass API)
domain/       → Models, repository interfaces, use cases
ui/           → Compose screens, ViewModels, navigation
di/           → Hilt modules

Layers

┌──────────────────────────────────────────┐
│                ui (Compose)              │  Screens · ViewModels
├──────────────────────────────────────────┤
│                  domain                  │  Use cases · Repository interfaces · Models
├──────────────────────────────────────────┤
│                   data                   │  Room DB · Overpass API · Mappers
└──────────────────────────────────────────┘

Key patterns:

  • ViewModels expose StateFlow with sealed UI state classes
  • Use cases encapsulate business logic, keeping ViewModels thin
  • Repository pattern abstracts local (Room) and remote (Overpass) data sources
  • Hilt for dependency injection throughout
  • All drink and recipe data is bundled with the app — works fully offline except for the map

Tech Stack

Category Library / Tool
Language Kotlin
UI Jetpack Compose
Architecture MVVM + Clean Architecture
Dependency Injection Hilt
Navigation Jetpack Navigation Compose
Local Database Room
Async Kotlin Coroutines + Flow
Map OpenStreetMap · Overpass API

Getting Started

  1. Clone the repository
    git clone https://github.com/fbaldhagen/reciperecommendr.git
  2. Open in Android Studio
  3. Build and run on a device or emulator running Android 8.0+ (API 26+)

No API keys or configuration needed — the app works out of the box.


License

This project is licensed under the MIT License.

About

Android cocktail app — browse recipes, track your inventory, and find out what you can make. Built with Kotlin & Jetpack Compose.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages