An Android task manager for the todo.txt.d plain-text format. Tasks are individual .txt files in a directory you control — no cloud accounts, no proprietary databases.
Built with Kotlin and Jetpack Compose. Targets Android 14+ (minSdk 34).
Note: This project is developed primarily through agentic coding (AI-assisted development). While functional, it carries the usual risks of AI-generated code. Review before relying on it.
- Browse, create, edit, and complete tasks stored as plain
.txtfiles via SAF (Storage Access Framework) - Full todo.txt syntax support: priorities
(A), projects+project, contexts@context, due/scheduled/starting/updated dates - Smart lists — user-defined filter views with
AND/ORlogic,sort by, andgroup bydirectives - Directory-based list groups for organizing smart lists in the sidebar
- Auto-generated project and context views
- Per-task swipe actions: complete (right), delete with undo (left), update timestamp
- Task editor with project/context autocomplete and smart list prefill support
- Due date and scheduled date notifications
- Home screen widget showing today's tasks
- No cloud sync built in — use Syncthing (see below)
- No collaboration features
- No recurring/repeating tasks
- No calendar integration
- No task prioritization beyond the standard
(A)-(Z)priority syntax
todo.txt.d is designed for conflict-free file sync. The recommended setup:
- Syncthing — Sync your
todo.txt.d/directory across devices. Each task is a separate file, so independent changes on different devices never conflict. - Tailscale (optional) — Secure mesh VPN for Syncthing when devices aren't on the same network. Install Tailscale on each device and point Syncthing at the Tailscale IPs.
Set your Syncthing folder path, then point Tasks to that directory on first launch via the SAF directory picker.
Tasks is not affiliated with Syncthing or Tailscale.
- todo.txt.d specification — The format spec this app implements (v3.0.0)
- ttd-rs — Terminal UI for desktops, same format
- Syncthing — Continuous file synchronization
- Tailscale — Zero-config VPN for secure device connectivity
- Android Studio (Hedgehog or later)
- JDK 17+
# Set JDK path if needed
export JAVA_HOME=/opt/android-studio/jbr
# Build debug APK
./gradlew assembleDebug
# Run unit tests
./gradlew test
# Run lint
./gradlew lintOutput APK: app/build/outputs/apk/debug/app-debug.apk
Open this directory as a project, wait for Gradle sync, then Run > Run 'app'.
GPL-3.0 — same as the specification this project implements.
Disclaimer: This software is provided "as is", without warranty of any kind. The author is not responsible for lost tasks, missed deadlines, or any other consequences of using this software. Always back up your todo.txt.d/ directory.