Zum Inhalt springen
Alle ProjekteNative Android-App

BUILD

Ein persönliches Planungs- und Fitnessproblem, übersetzt in ein natives Android-Produkt.

Art
Native Android-App
Status
Produkt
Stack
Kotlin, Jetpack Compose, Material 3

Überblick

BUILD ist eine persönliche App für Fitness und Tagesroutinen auf Android. Sie bündelt Training, Ernährung, Trinkmenge, Supplements, Erinnerungen und Notizen an einem Ort – und passt sich an, wenn sich der Zeitplan ändert.

Das Problem

Training, Ernährung und Tagesroutinen verteilen sich meist auf verschiedene Apps und Notizen – und keine davon kommt gut damit zurecht, wenn eine Woche anders läuft als geplant. Der Ausgangspunkt war persönlich: eine sich ändernde Routine organisiert halten, ohne mehrere Werkzeuge zu jonglieren.

Ansatz

Statt eines einfachen Trackers behandelt BUILD die Routine als strukturierte Daten mit Zeitplan. Trainingseinheiten, Sätze, Wiederholungen und Progression stehen neben Ernährung, Protein, Trinkmenge und Supplements; Erinnerungen werden aus diesen Daten geplant, und der Plan lässt sich neu ordnen, wenn sich der Zeitplan ändert.

App-Architektur
  1. Zeitplan
  2. App-Logik (MVVM)
  3. Room-Daten
  4. Dynamische Planung
  5. Erinnerungen

Omars Beitrag

  • Aus einem persönlichen Routineproblem eine Produktdefinition gemacht
  • Die App nativ in Kotlin mit Jetpack Compose und Material 3 entwickelt
  • Architektur nach MVVM mit unidirektionalem Datenfluss
  • Persistenz mit Room, reaktive Aktualisierung mit Coroutines und Flow
  • Erinnerungen über AlarmManager geplant
  • Automatisierte Tests mit JUnit, Robolectric und Roborazzi

Funktionen

  • Trainings-Tracking: Übungen, Sätze, Wiederholungen, Progression
  • Ernährung, Protein und Trinkmenge
  • Supplements
  • Erinnerungen und Notizen
  • Dynamische Routinen, die sich an Zeitpläne anpassen
  • Material-3-Design, responsive Layouts und Dark Mode

Architektur

  • UI: Jetpack Compose mit Material 3
  • Präsentation: MVVM mit unidirektionalem Datenfluss
  • Daten: Room-Datenbank als Single Source of Truth
  • Nebenläufigkeit: Kotlin Coroutines und Flow für reaktive Aktualisierung
  • Planung: AlarmManager für Erinnerungen
  • Qualität: JUnit, Robolectric und Roborazzi-Screenshot-Tests

Zentrale Entscheidungen

  • Natives Kotlin statt Web-Wrapper – Erinnerungen und Offline-Daten brauchen die Plattform
  • Room als Single Source of Truth, Flow hält die Oberfläche synchron
  • Unidirektionaler Datenfluss, damit eine funktionsreiche App vorhersehbar bleibt
  • Automatisierte Tests, einschließlich Screenshot-Tests, von Anfang an

Die eigentliche Herausforderung

Das Schwierige ist nicht das Tracking, sondern die Veränderung. Eine Routine, die sich verschiebt, braucht Daten, Planung und Erinnerungen, die zueinander konsistent bleiben.

Ergebnis

Eine funktionierende native Android-App mit strukturierten Daten, dynamischer Planung, Erinnerungen, persistenter Speicherung und automatisierten Tests – entwickelt rund um eine persönliche Routine.

Technologie

  • Kotlin

  • Jetpack Compose

    Oberfläche

  • Material 3

  • MVVM

    Architektur

  • Room

    Persistenz

  • Coroutines & Flow

    Reaktive Daten

  • AlarmManager

    Erinnerungen

  • JUnit · Robolectric · Roborazzi

    Tests

Warum es relevant ist

Native Produktentwicklung: ein Alltagsproblem von der Idee bis zur strukturierten, getesteten Mobile-App bringen.

Nächstes Projekt

KnowledgeTree

Ein Thema eingeben, einen strukturierten Lernpfad erhalten.