docs: resolve open design decisions in V1 spec
- App-Name: Calendula (etymologisch von 'kalendae' = erster Tag des Monats, Wortwurzel von 'Kalender'; gleichzeitig die Ringelblume) - Package: de.jeanlucmakiola.calendula - Seed-Color: 0xFF5C6B7A (desaturiertes Schiefer-Blaugrau) - Icon-Konzept: statische '1' auf M3-Expressive-Squircle, Slate- Background; die '1' referenziert kalendae UI-Layout-Details bleiben bewusst offen fuer die UI-Design-Iteration nach Spec-Approval. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
# Calendar App - V1 Design Spec
|
# Calendula - V1 Design Spec
|
||||||
|
|
||||||
**Date:** 2026-06-08
|
**Date:** 2026-06-08
|
||||||
**Status:** Draft for review
|
**Status:** Draft for review
|
||||||
@@ -66,7 +66,8 @@ von Google Calendar gibt - speziell mit dem 2025er Expressive-Design.
|
|||||||
- `android.permission.QUERY_ALL_PACKAGES` **nicht** nötig (Maps-Intent geht ohne)
|
- `android.permission.QUERY_ALL_PACKAGES` **nicht** nötig (Maps-Intent geht ohne)
|
||||||
|
|
||||||
### App-Identifier
|
### App-Identifier
|
||||||
- Package: `de.jeanlucmakiola.cal` (Name "cal" als Platzhalter, finalisierung später)
|
- **App-Name:** Calendula (vom lateinischen *kalendae* - "der erste Tag des Monats", Wortwurzel von "Kalender"; gleichzeitig der Name der Ringelblume)
|
||||||
|
- **Package:** `de.jeanlucmakiola.calendula`
|
||||||
- Convention identisch zu `HouseHoldKeaper`: `de.jeanlucmakiola.<app_name>`
|
- Convention identisch zu `HouseHoldKeaper`: `de.jeanlucmakiola.<app_name>`
|
||||||
|
|
||||||
## 4. Architektur
|
## 4. Architektur
|
||||||
@@ -77,8 +78,8 @@ wenn nötig - YAGNI.
|
|||||||
|
|
||||||
### Package-Layout
|
### Package-Layout
|
||||||
```
|
```
|
||||||
de.jeanlucmakiola.cal/
|
de.jeanlucmakiola.calendula/
|
||||||
├── App.kt + MainActivity.kt
|
├── CalendulaApp.kt + MainActivity.kt
|
||||||
├── data/ ContentResolver-Wrapper, Repositories
|
├── data/ ContentResolver-Wrapper, Repositories
|
||||||
├── domain/ Pure-Kotlin Models (Event, CalendarSource)
|
├── domain/ Pure-Kotlin Models (Event, CalendarSource)
|
||||||
└── ui/
|
└── ui/
|
||||||
@@ -369,18 +370,30 @@ Adaption der `HouseHoldKeaper`-Pipeline, nur Flutter-Steps durch Gradle ersetzt.
|
|||||||
|
|
||||||
### Repo-Konventionen
|
### Repo-Konventionen
|
||||||
- `CHANGELOG.md` wird beim Taggen gepflegt (patch/minor/major)
|
- `CHANGELOG.md` wird beim Taggen gepflegt (patch/minor/major)
|
||||||
- `fdroid-metadata/de.jeanlucmakiola.cal/` Verzeichnis-Struktur
|
- `fdroid-metadata/de.jeanlucmakiola.calendula/` Verzeichnis-Struktur
|
||||||
- `LICENSE` = MIT, Jean-Luc Makiola, 2026
|
- `LICENSE` = MIT, Jean-Luc Makiola, 2026
|
||||||
- `.planning/` mit `PROJECT.md`, `REQUIREMENTS.md`, `ROADMAP.md`, `STATE.md`
|
- `.planning/` mit `PROJECT.md`, `REQUIREMENTS.md`, `ROADMAP.md`, `STATE.md`
|
||||||
|
|
||||||
## 12. Open Decisions
|
## 12. Design-Decisions (gelöst)
|
||||||
|
|
||||||
| Punkt | Status |
|
### Theme-Seed-Color (Fallback wenn kein Dynamic Color verfügbar)
|
||||||
|---|---|
|
**`0xFF5C6B7A`** - desaturiertes Schiefer-Blaugrau.
|
||||||
| Finaler App-Name (Platzhalter `cal`) | offen, später |
|
- Bewusst anders als HouseHoldKeaper's Sage (`0xFF7A9A6D`), damit beide Apps unterscheidbar sind
|
||||||
| Konkretes UI-Layout pro Screen (Mockups, Komponenten-Wahl) | offen, eigene Design-Iteration nach Spec-Approval |
|
- Mid-Saturation → M3 Expressive Dynamic Color generiert daraus eine ausgewogene Palette
|
||||||
| Theme-Seed-Color (Hex) für Fallback wenn kein Dynamic Color | offen, später beim Design |
|
- Cool aber nicht kalt → passt zu "modern functional"
|
||||||
| Icon (Adaptive Launcher + Foreground) | offen, später beim Design |
|
- Funktioniert in Light- und Dark-Theme
|
||||||
|
|
||||||
|
### App-Icon (Adaptive Launcher)
|
||||||
|
**Statische "1" auf M3-Expressive-Squircle.**
|
||||||
|
- **Foreground:** Stilisierte Ziffer "1" (bold), zentriert auf einem Squircle
|
||||||
|
- **Background:** Seed-Color `0xFF5C6B7A` (slate)
|
||||||
|
- **Bedeutung:** Die "1" referenziert *kalendae* (der erste Tag des Monats) - Wortwurzel sowohl von "Kalender" als auch "Calendula". Die App heisst Calendula, aber das Icon zeigt klar: dies ist ein Kalender.
|
||||||
|
- Adaptive-Icon-Spec: Foreground 432dp x 432dp Safe-Zone in 108dp Tile, Background fest
|
||||||
|
- Vektor-basiert (kein PNG), in `res/drawable/ic_launcher_*.xml` als VectorDrawable
|
||||||
|
|
||||||
|
### Konkretes UI-Layout pro Screen
|
||||||
|
**Bewusst offen** - wird in eigener UI-Design-Iteration nach Spec-Approval entworfen
|
||||||
|
(Mockups pro Screen, alle drei States, vor Implementation).
|
||||||
|
|
||||||
## 13. Nächste Schritte nach Spec-Approval
|
## 13. Nächste Schritte nach Spec-Approval
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user