Most task managers are either too simple (a plain todo list) or too complex (a project management suite that requires onboarding). Tududi sits in the middle: a hierarchical GTD-inspired system with Areas containing Projects containing Tasks and Notes, smart recurring tasks, Telegram quick-capture, CalDAV sync, OIDC/SSO, and a clean dark UI. Self-hosted on Docker in one command. 3,300+ GitHub stars, MIT licensed, Node.js + React + Express + SQLite.
What Tududi is
Tududi (tududi.com, github.com/chrisvel/tududi) is a calm, open system for organizing life and work. Built by Chris Veleris (Greece). MIT licensed. Node.js + Express backend, React frontend, SQLite by default (PostgreSQL optional). Docker single-image deployment. PWA installable on Android, iOS, and desktop. 24 language support.
The hierarchy: Areas, Projects, Tasks, Notes
Tududi uses a four-level GTD-inspired hierarchy. Areas are the top-level domains of your life or work (Health, Finance, Work, Personal). Projects live inside areas and group related work with a purpose and deadline. Tasks belong to projects and are the actionable items with due dates, priorities, and subtasks. Notes attach to projects as reference material. Tags cross-cut the hierarchy for flexible filtering.
Task views: Today (due today or overdue), Upcoming (due this week), Someday (no due date). Sort by name, due date, date created, or priority. Filter by area, project, or tag.
Recurring tasks
Smart recurring task system with parent-child relationships. Patterns: daily, weekly, monthly, monthly on a specific weekday (first Tuesday, last Friday), and monthly last day. Option to repeat based on completion date rather than due date. Custom intervals (every 2 weeks, every 3 months). Optional end dates for recurring series. Generated task instances maintain a link to the original pattern, and you can edit recurrence settings from any generated instance.
Telegram integration
Create tasks directly from Telegram messages. Receive daily digests of your tasks to a Telegram chat. Quick capture without opening the app. Useful for capturing tasks on the go when you don't want to context-switch into the full UI.
CalDAV synchronization
Bidirectional CalDAV sync for connecting Tududi to popular task clients. Supported clients: tasks.org (Android), Apple Reminders (iOS/macOS), Thunderbird, Evolution. Connect to external CalDAV servers (Nextcloud, Baikal). Full recurring task support with RRULE. Conflict detection and resolution. Background automatic sync. Encrypted password storage (AES-256-GCM).
OIDC/SSO authentication
Enterprise-ready SSO via OpenID Connect. Supported providers: Google, Okta, Keycloak, Authentik, PocketID, Azure AD, and any OIDC-compliant provider. Just-in-time user provisioning on first login. Account linking for existing users. Admin role assignment based on email domains. Multiple providers simultaneously. Hybrid auth (email/password + SSO). Configured via environment variables.
PWA and offline support
Installable PWA for Android, iOS, and desktop browsers. Stays readable from cache when offline. Write operations are queued and synced automatically when connectivity returns. Works like a native app on mobile without an app store listing.
REST API
Full REST API at /api/v1 with Swagger documentation at /api-docs. Personal API keys for programmatic access. Complete CRUD for tasks, projects, notes, areas. Recurring task and subtask management. Real-time task metrics. Integrates with external tools and automations.
Self-hosting
docker run \
-e TUDUDI_USER_EMAIL=admin@example.com \
-e TUDUDI_USER_PASSWORD=your-password \
-e TUDUDI_SESSION_SECRET=$(openssl rand -hex 64) \
-v ~/tududi_db:/app/db \
-p 3002:3002 \
-d chrisvel/tududi:latestNavigate to http://localhost:3002. SQLite by default — single file, zero database setup. Set DATABASE_URL to a Postgres connection string for multi-user or larger deployments. Every start backs up the SQLite file automatically before running migrations.
Project sharing and collaboration
Share projects with other users on the same Tududi instance. Multi-user collaboration on shared projects. Each user has their own account with their own task hierarchy.
Who it is for
Good fit: individuals who want a GTD-style hierarchy without paying for Todoist Premium or Notion; self-hosters who want task management on their own infrastructure with CalDAV sync to existing clients; teams who want a simple shared project and task system without enterprise pricing; developers who want a Telegram-connected task inbox for quick capture.
Not ideal: teams that need Kanban boards or Gantt charts (Tududi is list-first); users who need real-time collaborative editing like Google Docs; organizations needing formal enterprise support contracts.
My take
Tududi solves the personal productivity problem without the bloat. The four-level hierarchy (Area, Project, Task, Note) maps cleanly to GTD without forcing you to read a book to use the app. The Telegram integration for quick capture is genuinely useful. The CalDAV sync means your tasks appear in Apple Reminders or tasks.org without a proprietary sync service. MIT licensed, Docker, SQLite. The kind of tool you install once and use for years.
PIPOLINE · DEVOPS CONSULTING
Need help deploying Tududi for your team?
Docker Compose, Traefik for HTTPS, PostgreSQL for multi-user, OIDC/SSO setup with your identity provider, CalDAV sync configuration, Telegram bot integration, and team onboarding.
Get in touch at pipoline.com
Member discussion