Allgemeine Vorgaben:

  • Github Repo mit ordentlichem Workflow
    • Project für Roadmap
    • Issues mit Tags für Bugs und Features
    • Conventional commits
    • Qodana + SonarCloud als Quality Gates
    • Feature branches für Änderungen, Merges nach Main nur wenn Code reviewed wurde
  • Quelloffen, passende Lizenz
  • Authentifizierung mit OAuth, aber kein Username / Password
  • Cross-Plattform Mobile app (erstmal kein Webinterface)
  • alle TODOs werden auf einem Server gespeichert (erstmal online-only)

Tech stack:

  • Vorgegebene Architektur: HTTP-APIs, welches in eine Datenbank schreibt
  • Java und JDK 21, Kotlin nach Wahl / bei Bedarf
  • Compose Multiplatform
  • sonst freie Wahl des Stacks, aber müssen approved werden

Features:

  • TODOs erstellen, löschen, abrufen und erledigen
  • TODOs in Listen gruppieren
  • TODOs können mit Fristdatum und Zeit versehen werden Notification
  • Mehrere Ansichten (z.B. Liste, Kalender)

Erlernbare Themen:

  • Arbeit in einem Software-Team (Arbeit in einem quelloffenen Projekt)
  • Pull requests und Code review Wie schreibt man „sauberen” Code
  • Git Branches
  • Lizensierung quelloffener Software
  • Authentifizierung und OAuth
  • Compose Multiplatform (Native App Development)
  • HTTP-APIs (REST)
  • Wahl eines Tech Stacks (einer Datenbank)