Dooit logo

Dooit

Beautiful, customizable TUI todo manager for the terminal

A terminal-based todo manager with vim-like keybindings, full customization through Python config, and an interactive UI built with Textual.

Dooit banner

Overview

A Terminal Todo Manager Built for Power Users

Dooit is a feature-rich TUI (Text User Interface) todo manager designed for developers and terminal enthusiasts who want task management without leaving the command line. Built with Python and Textual, it delivers an interactive, visually appealing interface that rivals modern GUI applications.

Customization and Extensibility

Every aspect of Dooit is configurable—from colors and status bars to keybindings and display layouts. The Python-based configuration system lets you extend functionality programmatically, while the companion Dooit Extras project provides pre-built themes and enhancements. Whether you prefer Nord, Catppuccin, or Everforest aesthetics, you can tailor the experience to match your workflow.

Workflow-Focused Design

Vim-like keybindings ensure efficient navigation without reaching for the mouse. Topic-based organization with branching support lets you structure todos hierarchically, making it ideal for managing complex projects alongside daily tasks. Press ? at any time to view available commands and shortcuts.

Released under the MIT license, Dooit runs anywhere Python does, bringing powerful task management to your terminal with zero bloat.

Highlights

Vim-like keybindings for keyboard-driven task management
Fully customizable UI through Python configuration files
Hierarchical todo organization with topic branching
Interactive Textual-based interface with theme support

Pros

  • Highly customizable appearance and behavior via Python config
  • Efficient vim-style navigation keeps hands on keyboard
  • Beautiful, modern TUI that works entirely in the terminal
  • Active community with theme extensions and plugins available

Considerations

  • Requires familiarity with vim keybindings for optimal use
  • Python configuration may have learning curve for non-programmers
  • Terminal-only interface limits accessibility for some users
  • Advanced customization requires Python knowledge

Managed products teams compare with

When teams consider Dooit, these hosted platforms usually appear on the same shortlist.

Any.do logo

Any.do

To-do list and task management app for organizing personal tasks, reminders, and schedules

Google Tasks logo

Google Tasks

Simple task & to-do lists integrated with Gmail and Google Calendar

Todoist logo

Todoist

Task & to-do manager with projects, labels, reminders, and AI assist

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Developers who live in the terminal and prefer keyboard workflows
  • Users seeking highly customizable task management tools
  • Teams standardizing on terminal-based productivity stacks
  • Anyone wanting lightweight, distraction-free todo tracking

Not ideal when

  • Users who prefer graphical interfaces or mobile access
  • Teams requiring real-time collaboration features
  • Organizations needing enterprise integrations or cloud sync
  • Beginners uncomfortable with terminal applications

How teams use it

Developer Project Tracking

Manage feature branches, bugs, and tasks without leaving your terminal workflow, organizing work by repository or sprint.

Personal GTD System

Implement Getting Things Done methodology with hierarchical topics for contexts, projects, and next actions—all keyboard-driven.

Themed Productivity Environment

Match your todo manager to your editor and terminal theme (Nord, Catppuccin, Everforest) for a cohesive aesthetic workspace.

Distraction-Free Task Management

Focus on completing tasks in a minimal, terminal-based environment free from notifications and web-based distractions.

Tech snapshot

Python97%
Nix1%
TypeScript1%

Tags

python3todo-apptextualunixpornclituitodolistrichterminal-based

Frequently asked questions

What are the system requirements for Dooit?

Dooit requires Python 3 and runs on any platform supporting Python and terminal emulators. Check the wiki for detailed installation instructions.

How do I learn the keybindings?

Press the `?` key after launching Dooit to display all available keybindings and commands in an interactive help screen.

Can I customize the appearance and themes?

Yes, Dooit is fully customizable through Python configuration files. The Dooit Extras project provides pre-built themes like Nord, Catppuccin, and Everforest.

Does Dooit support cloud sync or mobile access?

Dooit is a local, terminal-based application without built-in cloud sync. You would need to manage data synchronization separately if required.

Is Dooit suitable for beginners?

While usable by anyone, Dooit is optimized for users comfortable with terminal applications and vim-style keybindings. There is a learning curve for customization.

Project at a glance

Active
Stars
2,793
Watchers
2,793
Forks
120
LicenseMIT
Repo age3 years old
Last commit2 days ago
Primary languagePython

Last synced yesterday