feat(meditate): the dream journal, a fourth tab, Today's morning card

ADR 0038, D14. A dream (`Dream`) holds the night it belongs to (the
morning's date, today's by default), an optional title, its text, the
marks lucid, nightmare and recurring, a clarity of 1 to 5, the mood on
waking and free labels, and when it was written; a row each in `dream`,
sealed for its row with the person's key as the sittings
(`DreamRepository` on `SealedRows`, `SyncDreamGateway`), followed by
`JournalCubit` for every screen.

- The Journal, between Explore and Profile: dreams by month, the
  newest first, searched over title, text and labels as Explore
  searches, filtered by marks, `+` above the bar; empty, it says that
  entries are sealed on the device before they sync.
- A dream's screen over the tabs: a new one with its text first and
  focused, the rest folded below; a kept one to read, with Edit and
  Delete (asked first); leaving one written but not saved asks first.
- Today, from 4 to 12 o'clock while last night has no dream, a gentle
  card leading to a new one; Settings' Journal card switches it off
  (`dreamPrompt` in the sealed settings, schema 1 kept).
- Profile's Practice: this month's dreams and the lucid ones, once the
  journal holds one.
- English and German texts; What's new 0.1.0 names the journal; the
  account's deletion says it takes the dreams too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-03 14:19:10 +01:00
commit 86c9f4522a
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -4,7 +4,7 @@
"launchProduct": "Meditate",
"instanceFirstStartSubtitle": "Wähle die Instanz, auf der deine Praxis liegen soll. Jede betreibt jemand; weitere kannst du später hinzufügen.",
"accountTitle": "Konto",
"accountDeleteMessage": "Dein Konto wird auf dem Server und auf all deinen Geräten gelöscht, mit jeder gespeicherten Sitzung. Dies kann nicht rückgängig gemacht werden.",
"accountDeleteMessage": "Dein Konto wird auf dem Server und auf all deinen Geräten gelöscht, mit jeder gespeicherten Sitzung und jedem Traum. Dies kann nicht rückgängig gemacht werden.",
"aboutTitle": "Über Halkyon Meditate",
"settingsTitle": "Einstellungen",
"settingsVersion": "Version {version} (Build {build})",
@ -120,5 +120,51 @@
"timerLengthTitle": "Dauer des stillen Timers",
"settingsPractice": "Praxis",
"showStreakTitle": "Tage in Folge zeigen",
"showStreakHint": "Unter Heute und in deinem Profil"
"showStreakHint": "Unter Heute und in deinem Profil",
"shellTabJournal": "Journal",
"journalSearch": "Träume durchsuchen",
"journalEmptyTitle": "Dein Traumtagebuch",
"journalEmpty": "Schreib einen Traum gleich nach dem Aufwachen auf, bevor er verblasst. Jeder Eintrag wird auf diesem Gerät versiegelt, bevor er synchronisiert wird: Niemand sonst kann ihn lesen, auch die Instanz nicht.",
"journalNoMatch": "Kein Traum passt.",
"journalAdd": "Traum aufschreiben",
"journalFiguresTitle": "Traumtagebuch",
"figuresDreamsThisMonth": "Diesen Monat",
"figuresLucid": "Luzid",
"markLucid": "Luzid",
"markNightmare": "Albtraum",
"markRecurring": "Wiederkehrend",
"moodGlad": "Froh",
"moodCalm": "Ruhig",
"moodPuzzled": "Verwundert",
"moodSad": "Traurig",
"moodUneasy": "Unruhig",
"dreamNew": "Neuer Traum",
"dreamLastNight": "Letzte Nacht",
"dreamNight": "Nacht vor dem {date}",
"dreamTextHint": "Was hast du geträumt?",
"dreamTitleLabel": "Titel (optional)",
"dreamMore": "Nacht, Titel, Merkmale und mehr",
"dreamNightLabel": "Nacht",
"dreamMarksLabel": "Merkmale",
"dreamClarityLabel": "Klarheit",
"dreamClarityHint": "Wie klar du dich erinnerst, 1 bis 5",
"dreamClarityValue": "Klarheit {clarity}/5",
"dreamMoodLabel": "Stimmung beim Aufwachen",
"dreamLabelsLabel": "Schlagwörter",
"dreamLabelsHint": "Menschen, Orte, Themen",
"dreamLabelAdd": "Schlagwort hinzufügen",
"dreamSave": "Speichern",
"dreamEdit": "Bearbeiten",
"dreamDelete": "Löschen",
"dreamDeleteTitle": "Diesen Traum löschen?",
"dreamDeleteMessage": "Er verschwindet auf all deinen Geräten aus deinem Journal.",
"dreamDiscardTitle": "Diesen Traum verwerfen?",
"dreamDiscardMessage": "Was du geschrieben hast, wird nicht gespeichert.",
"dreamDiscard": "Verwerfen",
"dreamWritten": "Geschrieben am {date}",
"todayDreamPrompt": "Schreib den Traum der letzten Nacht auf",
"todayDreamPromptHint": "Bevor er verblasst. Versiegelt auf diesem Gerät.",
"settingsJournal": "Journal",
"dreamPromptTitle": "Nach dem Traum der letzten Nacht fragen",
"dreamPromptHint": "Unter Heute, von 4 bis 12 Uhr, bis du einen aufschreibst"
}