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)