Go to file
Krzysztof kuhy Rudnicki 860d789864
Some checks are pending
dependency freshness / dependencies on newest stable (push) Waiting to run
file-length / file length <= 250 lines (push) Waiting to run
md-naming / markdown naming convention (push) Waiting to run
release-apk / release (APK) (push) Waiting to run
repo-contract / repo contract (push) Waiting to run
Use google_account_token plugin
Replace the app-local AccountManager channel with the shared plugin
(google_account_token-v0.1.0); kServerClientId stays put.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzxdWY1k4muZfdVJfb7YGJ
2026-11-02 11:15:28 +01:00
.agents/skills Add Flutter/Dart agent skills and AI rules for Claude Code 2026-06-22 22:53:03 +02:00
.github/workflows Bump flutter 3.47.7, gradle 9.8.1, pub deps to latest 2026-10-16 15:41:06 +02:00
android Use google_account_token plugin 2026-11-02 11:15:28 +01:00
assets/icon Launcher: label Todo (Android, desktop entry, PKGBUILD), icon fitted to the shared 340px ink circle 2026-10-23 14:38:14 +02:00
bin Repo tasks: repo/done_check/by/evidence fields, filter chips, CLI close/list/search 2026-11-02 08:26:26 +01:00
desktop Launcher: label Todo (Android, desktop entry, PKGBUILD), icon fitted to the shared 340px ink circle 2026-10-23 14:38:14 +02:00
docs Re-point paths for the ~ reorganisation (home-tidy) 2026-09-11 19:49:03 +02:00
lib Use google_account_token plugin 2026-11-02 11:15:28 +01:00
mcp Add one-command MCP go-live + live verify 2026-11-02 10:45:45 +01:00
packaging/aur Launcher: label Todo (Android, desktop entry, PKGBUILD), icon fitted to the shared 340px ink circle 2026-10-23 14:38:14 +02:00
scripts install_hooks: resolve hooks dir via common git dir 2026-11-02 10:24:59 +01:00
test Use google_account_token plugin 2026-11-02 11:15:28 +01:00
tool Attach images to notes, stored on dufs and kept offline 2026-09-25 14:11:15 +02:00
web Launcher: label Todo (Android, desktop entry, PKGBUILD), icon fitted to the shared 340px ink circle 2026-10-23 14:38:14 +02:00
.fvmrc Bump flutter 3.47.7, gradle 9.8.1, pub deps to latest 2026-10-16 15:41:06 +02:00
.gitignore Latest stable dependencies, and the gate that keeps them there 2026-08-28 14:46:50 +02:00
.mcp.json MCP: Dart task server replaces Python todo_mcp 2026-11-02 09:36:44 +01:00
.metadata Make the app compile and run for web, behind platform seams 2026-07-20 13:14:03 +02:00
.pre-commit-config.yaml Launcher: label Todo (Android, desktop entry, PKGBUILD), icon fitted to the shared 340px ink circle 2026-10-23 14:38:14 +02:00
AGENTS.md MCP: Dart task server replaces Python todo_mcp 2026-11-02 09:36:44 +01:00
analysis_options.yaml Exclude platform dirs from analysis; refresh the lockfile 2026-08-14 17:20:51 +02:00
CLAUDE.md Adopt the four markdown namespaces and gate them 2026-08-24 15:54:35 +02:00
install_arch.sh Desktop: no stray browser window from extensions; keyboard stays down after backing out of a note 2026-10-23 12:00:26 +02:00
LICENSE Add MIT license 2026-06-14 14:42:45 +02:00
pubspec.lock Use google_account_token plugin 2026-11-02 11:15:28 +01:00
pubspec.yaml Use google_account_token plugin 2026-11-02 11:15:28 +01:00
README.md Add headless note CLI (bin/todo_note.dart) reusing app CRDT sync 2026-10-16 15:35:46 +02:00
run.sh Export the backlog to ~/src/todo, not the pre-reorganisation ~/todo 2026-09-12 17:13:21 +02:00
skills-lock.json Add Flutter/Dart agent skills and AI rules for Claude Code 2026-06-22 22:53:03 +02:00
TODO-fix-image-store-io-attach-pathnotfound.md TODO: flaky image_store_io attach test 2026-11-02 10:28:26 +01:00

todo

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Headless note CLI

bin/todo_note.dart adds, lists, reads and deletes notes from the PC without the app, as one more sync node (own node_id and CRDT log under $XDG_DATA_HOME/todo-cli, or ~/.local/share/todo-cli). It needs the desktop Firebase session at ~/.config/todo/firebase_auth.json (seed it with python3 ~/src/utils/crdt-sync/tool/seed_session.py --app todo).

dart run bin/todo_note.dart --text "Title

body" --priority high --status in_progress     # prints the new note id
echo "Title" | dart run bin/todo_note.dart     # text from stdin
dart run bin/todo_note.dart --list             # id, priority, status, title
dart run bin/todo_note.dart --get <id>         # full note
dart run bin/todo_note.dart --delete <id>

--list and --get never push; --data-dir <dir> selects a throwaway node. Exit codes: 0 ok, 1 sync/auth failure or note not found, 2 bad arguments. All logic is in lib/cli/ (tested in test/cli/); --help lists every flag.