Focus capture · attach a time · do 1–3
Capture
Type naturally — call Sam friday 2pm @Dana fills in the date, time & person. Add every week to repeat, or #today for today. No fields required.
Person

Today

Your 1–3 most important tasks. Give each a real next step and a time. Do the top one first — one thing at a time.

Inbox

Raw captures. Triage each: decide the next action, a when, maybe who.

Scheduled

Parked with a time. When its day comes, pull it into Today.

Done
Cleared tasks stay here as a record.

Why it's built this way

No app can out-think the research: there's no single productivity system the evidence crowns — but three mechanisms hold up across peer-reviewed studies. This tool does exactly those three, and nothing that gets in their way (no sprawling board, no 60-item master list).

1

Get it out of your head

Externalizing tasks lowers cognitive load and the mental drag of open loops. Capture is instant and demands nothing — so it actually happens.

2

Attach a next action to a time

“When X, I’ll do Y” plans are the field’s most reliable finding (d≈0.65). That’s why a task on the calendar beats a task on a list.

3

Keep it short, one at a time

Attention holds about four things, and task-switching leaves residue that degrades the next task. So Today caps at three and elevates the one to do now.

Basis: Yared Consulting Knowledge Base — “The best-evidence way to manage to-dos” (2026-07-01). Anchors: Gollwitzer & Sheeran 2006; Masicampo & Baumeister 2011; Cowan 2001; Leroy 2009; Risko & Gilbert 2016. Note: the popular “Zeigarnik effect” (you remember unfinished tasks) does not replicate — the real gain is removing open-loop drag, which capture-and-plan does.

Team sync

Live shared tasks across your devices, backed by your own Supabase and secured with a passkey (Face ID). Enter your project details, then sign in — you stay signed in, so it’s a rare tap.

First-time setup (run once in Supabase)

1. SQL Editor → run this (locks the board to signed-in users):

create table if not exists focus_tasks (
  id text primary key,
  board text not null,
  data jsonb not null,
  updated_at timestamptz default now()
);
alter table focus_tasks enable row level security;
drop policy if exists "team access" on focus_tasks;
drop policy if exists "team members" on focus_tasks;
create policy "team members" on focus_tasks
  for all to authenticated
  using (true) with check (true);
revoke all on table focus_tasks from anon;
grant all on table focus_tasks to authenticated;
do $$
begin
  alter publication supabase_realtime add table focus_tasks;
exception when others then null;
end $$;

2. Authentication → Passkeys → turn on. Relying Party ID yci-todo.pages.dev, Origin https://yci-todo.pages.dev.

3. Authentication → Providers → enable Email (used once to create your account before the passkey).

Share & hand off

Focus keeps your tasks in this browser and, when you turn on Sync (top bar), live-shares them across your devices via your Supabase board. The options below are for one-off exports, backups, or handing someone a snapshot.