halkyon/apps/todo
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tizian 「ティツィアーン」 aac7d106aa
feat(todo): quick add's last button dictates the title while it is empty (ADR 0033, D29)
As Todoist's bar and Learn's assistant field (ADR 0021, D69): while the
title is empty its last button is the microphone, filled as the send
button is, dictating where the cursor stands and listening again after
each pause through halkyon_app's Dictation; what is said is read as if
typed. It shows a stop button while listening and the send button once
there is text, or alone where nothing recognises speech (Linux). A
phone without a recogniser is told how to get one.

Todo gets the device's speech input in its dependencies, and declares
the microphone and the recognition service on Android, the usage texts
on iOS and macOS and the audio input entitlement on macOS, as Learn
does.

Whats-New: Add task's last button is a microphone while the task has no name yet: say the task, dates included.
Whats-New-De: Der letzte Knopf von „Aufgabe hinzufügen“ ist ein Mikrofon, solange die Aufgabe noch keinen Namen hat: Sprich die Aufgabe, Daten eingeschlossen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-11-05 08:58:42 +01:00
..
halkyon_todo_client feat(todo): a project's Calendar, Upcoming's Display and its 3-day grid (ADR 0033, D17) 2026-11-01 20:01:00 +01:00
halkyon_todo_flutter feat(todo): quick add's last button dictates the title while it is empty (ADR 0033, D29) 2026-11-05 08:58:42 +01:00
halkyon_todo_server fix(deploy): the images drop third_party/'s overrides instead of copying it 2026-11-04 13:43:46 +01:00
snap feat(icons): every icon fades from cobalt into its app's backdrop; Learn shows its own inside the app; Train's dumbbell (ADR 0031, D5 to D7) 2026-11-02 23:12:20 +01:00
.gitignore chore: Halkyon Todo's scaffold joins the repository in apps/todo 2026-10-22 18:11:03 +02:00
AGENTS.md feat(todo): quick add's last button dictates the title while it is empty (ADR 0033, D29) 2026-11-05 08:58:42 +01:00
CLAUDE.md chore: Halkyon Todo's scaffold joins the repository in apps/todo 2026-10-22 18:11:03 +02:00
README.md feat: the apps' icons as one family, drawn by one tool (ADR 0031) 2026-10-30 15:52:45 +01:00
release.dart build(todo): Todo deployable beside Learn's server, and released as an APK, on F-Droid and as a snap (ADR 0033, step 5) 2026-11-02 16:04:00 +01:00

Halkyon Todo

To-dos, as a Halkyon app: for now a shell on the shared packages. People choose an instance, sign in (with SimpleLogin or a password), switch between the accounts on their devices, sign out and delete their account; the home is empty until Todo's first model.

Package What it is
halkyon_todo_server The server: Serverpod with the halkyon_base module
halkyon_todo_client Its client, generated by Serverpod
halkyon_todo_flutter The app, on halkyon_app and halkyon_ui (Android, iOS, Linux, macOS, Windows)

Run it with serverpod start in halkyon_todo_server, which starts the server (and its embedded PostgreSQL) and the app; or the app alone against an instance with flutter run --dart-define=SERVER_URL=https://…/ in halkyon_todo_flutter. Tests: dart run melos run test:dart --scope=halkyon_todo_server and dart run melos run test:flutter --scope=halkyon_todo_flutter at the repository's root, or dart run tool/check.dart for everything.

The app's icon is Lucide's list-todo (ISC licence, ADR 0031), drawn by the repository's tool/app_icons.py. Licences: the server under the SSPL, the client and the app under the AGPL (LICENSE.md).