Todo — butter docs Skip to content
Widgets / Focus

Todo

A fast task list with optional structure. Type freely, or sneak dates, priority, and tags into the input — they parse out of the title automatically.

Tasks first, structure when you want it. A plain list of titles looks exactly like that — no chrome, no toolbar. The moment any task gains a due date, priority, or tag, the widget grows a compact toolbar so you can sort, filter, and act on the metadata you put in. Tasks are stored locally, per widget instance.

Free 4×4 default Quick-add NL
Todo
  • Send the proposal to Sarah
  • Review the staging deploy
  • Draft Q3 OKRs
  • Reply to design review thread
  • Pick up groceries
  • Sketch a feedback loop for the inbox
  • Wrap up the launch checklist
  • Book the offsite venue

Add it to your dashboard

Press E then A and pick Todo. It drops in at four-wide, four-tall — comfortable for ten or so items before scrolling kicks in. Type into the input at the top, press Enter to add. Click the checkbox to mark done. Drag a row by its background to reorder.

The footer shows a running count — 3 remaining · 7 total — plus a Clear done button that wipes completed items in one click. The button only appears when there's something done to clear.

Quick-add: dates, priority, tags

Type a task and slip metadata in alongside the title. The parser extracts the metadata into the right slots and the task stores a clean title. Mix and match — order doesn't matter.

Sets Syntax Aliases
Due date tomorrow

e.g. reply to Sam tomorrow

today · fri · next mon · in 3 days · in 2 weeks
Priority !high

e.g. ship feature !high

!med · !low · !! · !!!
Tags #work

e.g. pick up groceries #errand #home

#errand · #anything (alphanum + dashes)

Don't want to type it? Click the calendar icon on any row to pick a date from a small menu (Today / Tomorrow / Next week / native picker / Clear). Click the flag to cycle priority none → low → med → high. Click any tag chip to filter the list to that tag; click #tag ✕ in the chip row at the top to clear.

Sort + Filter toolbar

A small toolbar appears only when at least one task has metadata. It has two controls:

  • Sort: Manual respects the drag order; Due date puts overdue and today at the top, no-date at the bottom; Priority orders high → med → low → none. Dragging a row while sorted by date or priority auto-flips back to manual so the move sticks.
  • Filter: All / Today / Overdue pills with a count badge on each. Today shows tasks due today plus overdue (so an overdue task isn't hidden when you focus on today). Overdue shows only past-due items, badge in red.

The toolbar collapses when every task is plain text. A list of three titles reads as a list of three titles — no controls in the way.

Settings

Setting Type Default
Sort done to bottom

Completed tasks move below open ones. Toggle off to leave them where they were checked.

toggle on
Hide done tasks

Hides completed tasks entirely. Still stored — toggle this off to see them again, or hit Clear done in the widget footer to delete them.

toggle off
Show created time

Adds a small relative timestamp next to each task — just now, 2m ago, 3d ago. Useful nudge when something's been sitting on the list too long.

toggle off
Confetti on complete

Small confetti burst from the checkbox when you mark a task done. Honors prefers-reduced-motion.

toggle on

How storage works

Todos live in Chrome's storage.local, keyed by the widget's instance ID — todos:<id>.

  • Each widget keeps its own list. Two Todo widgets on one dashboard means two independent lists.
  • Free: lists stay on the device. Pro cloud sync (opt-in): lists sync too.

Small things you might miss

  • Drag from anywhere on the row. No dedicated handle — pointer-down anywhere on a task row starts a reorder once you've moved past a small threshold. Click the checkbox or any icon without dragging and it does what you'd expect.
  • Overdue reads as red. The date pill on an overdue task is red instead of subtle. The duplicate left-border treatment we used to have was visual noise.
  • Filter counts use the open total. The "2" next to Today is the number of open tasks due today + overdue, regardless of which filter is active. Switching filters never surprises you with a different count.
  • Two empty states. A fresh widget says No tasks yet; one where you've cleared everything says Nothing left to do. Today-filter says Nothing's due today. Nice.

Heads up

  • Removing the widget removes its list. Deleting a Todo widget deletes the tasks stored under that instance.