Skip to content

SUFelix/Mealplanner-Android

Repository files navigation

Mealplanner

An Android app for planning meals and discovering new recipes.
It helps users discover get an overview of the nutritional value of planed meal and allows for automatic creation of a shopping list.
Own recipes can also be created and published (to the backend).
The translation into both supported languages(EN/DE) and the calculation of the macronutrients will happen automatically on publish.

Getting Started

The app can be installed directly from the Google Play Store.

Screenshots

Discover Recipes Nutrition Stats Settings Recipe View

Tech Stack

Language: Kotlin
UI: Jetpack Compose
Architecture: MVVM Architecture (View → ViewModel → UseCase → Repository → DAO)
Async / State: Coroutines, Flow
DI: Hilt
Networking / Serialization: <Retrofit, OkHttp, Moshi, Kotlinx Serialization>
Persistence: Room
Navigation: Navigation Compose
Image Loading: Coil
Google Services: Firebase Crashlytics

Data Model

| |

Backend Access

This project uses a closed-source backend. Backend access is abstracted via interfaces

Long-Term Direction

Custom Nutrition Metrics

The system supports a variety of custom nutrition metrics to evaluate nutritional quality. Instead of enforcing a single nutrition doctrine, the app allows different dietary theories and personal interpretations of "healthy".

Nutrition quality is treated as a measurable but configurable concept, not a fixed truth.

Multiple Optimization Strategies

Meal planning is modeled as an optimization problem with interchangeable strategies, such as:

  • local improvement (e.g. maximizing gain by replacing a single recipe)
  • global optimization over an entire meal plan
  • hybrid approaches combining personal preferences with nutritional quality

The optimization shall support all custom metrics, as mentioned above

Multilingual by Design

The goal is to support all major European languages (≥ 40 million native speakers each).

Fair, Non-Intrusive Monetization

The free version of the app is:

  • fully usable
  • ad-free
  • sufficient to gain substantial value

A potential premium subscription is intended as a nice-to-have for advanced features, not a requirement for meaningful use.

Offline-First Architecture

The app follows an offline-first approach:

  • core functionality works without internet access
  • data is stored locally and synchronized when connectivity is available
  • temporary offline usage shall be as functional as possible

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages