todo.due-label
The short English label shown next to a todo: "2 days overdue", "Due today", "Due tomorrow", "Due Fri 2 Oct".
dueLabel in TypeScript
1.0.0
py rs ts
21 tests
todo.due-status
Where a todo stands against its due date today: done, overdue, today, tomorrow, this week, later or no date.
dueStatus in TypeScript
1.0.0
py rs ts
19 tests
todo.export-csv
Write todos as a CSV file (RFC 4180) with one column per field, for backups, spreadsheets and other apps.
exportCsv in TypeScript
1.0.0
py rs ts
14 tests
todo.filter
The todos a list view shows: all, active or completed, optionally one tag, and a search box, in input order.
filterTodos in TypeScript
1.0.0
py rs ts
17 tests
todo.group-by-due
Split todos into Overdue, Today, Tomorrow, This week, Later, No date and Done sections, in that order.
A group of 2: groupByDue, groupByDueWithOrder
1.1.0
py rs ts
26 tests
todo.import-csv
Read todos from a CSV file (RFC 4180) as todo.export-csv writes it, checking every row, with row-numbered errors.
A group of 2: importCsv, validateTodoCsv
1.1.0
py rs ts
59 tests
todo.item
The to-do item type (Todo, TodoDraft, Recurrence) and its validators, with a message per field.
A group of 2: validateDraft, validateTodo
1.0.0
py rs ts
51 tests
todo.list
The to-do list reducer: add, edit, complete, remove, clear and reorder todos, each returning a new list.
A group of 8: addTodo, updateTodo, toggleTodo, removeTodo, clearCompleted, toggleAll, moveTodo, toggleAllMode
1.1.0
py rs ts
102 tests
todo.merge
Merge imported todos into a list by id: an imported todo replaces the one with its id, new ids are appended.
mergeTodos in TypeScript
1.0.0
py rs ts
11 tests
todo.next-occurrence
The next due date of a repeating todo once it is done: daily, weekdays, weekly, monthly or yearly, month-end safe.
nextOccurrence in TypeScript
1.0.0
py rs ts
24 tests
todo.normalise-tags
Clean up tags as typed: trim, drop the #, lower-case slug form, drop empties and duplicates, keep the order.
normaliseTags in TypeScript
1.0.0
py rs ts
13 tests
todo.parse-date-phrase
Read a typed due date like "tomorrow", "next friday", "in 2 weeks" or "2026-10-01" as a date, relative to today.
parseDatePhrase in TypeScript
1.0.0
py rs ts
53 tests
todo.parse-quick-add
Turn one typed line like "Pay rent tomorrow !high #home every month" into a todo draft.
parseQuickAdd in TypeScript
1.0.0
py rs ts
44 tests
todo.parse-repeat
Read a Repeat box, "every 2 weeks" or "every monday on 2026-10-05", as a todo's recurrence, or null.
parseRepeat in TypeScript
1.0.0
py rs ts
22 tests
todo.parse-tags
Read a tags box as typed, "#Home, work errands", into normalised tags: split on spaces and commas.
parseTags in TypeScript
1.0.0
py rs ts
12 tests
todo.recurrence-label
English text for a repeating todo's chip: "Every weekday", "Every 2 weeks on Monday", "Every month on the 31st".
recurrenceLabel in TypeScript
1.0.0
py rs ts
30 tests
todo.reschedule-recurrence
When a repeating todo's due date is moved by hand, move its series with it: the new date becomes the anchor.
rescheduleRecurrence in TypeScript
1.0.0
py rs ts
14 tests
todo.sort
Sort todos by manual order, due date, priority, creation time or title, stably, with sensible tie-breakers.
sortTodos in TypeScript
1.0.0
py rs ts
20 tests
todo.summary
Counts for a todo list's header or footer: total, active, done, overdue, due today, percent done and "3 items left".
summariseTodos in TypeScript
1.0.0
py rs ts
13 tests
todo.tag-counts
How many todos carry each tag, for a tag sidebar: most used first, open todos only unless asked.
tagCounts in TypeScript
1.0.0
py rs ts
10 tests