todo.filter
The todos a list view shows: all, active or completed, optionally one tag, and a search box, in input order.
filter_todos in Python
1.0.0
py rs ts
17 tests
todo.list → addTodo
The to-do list reducer: add, edit, complete, remove, clear and reorder todos, each returning a new list.
add_todo in Python, one function of this group
1.1.0
py rs ts
102 tests
todo.summary
Counts for a todo list's header or footer: total, active, done, overdue, due today, percent done and "3 items left".
summarise_todos in Python
1.0.0
py rs ts
13 tests
todo.item → validateTodo
The to-do item type (Todo, TodoDraft, Recurrence) and its validators, with a message per field.
validate_todo in Python, one function of this group
1.0.0
py rs ts
51 tests
todo.sort
Sort todos by manual order, due date, priority, creation time or title, stably, with sensible tie-breakers.
sort_todos in Python
1.0.0
py rs ts
20 tests
todo.merge
Merge imported todos into a list by id: an imported todo replaces the one with its id, new ids are appended.
merge_todos in Python
1.0.0
py rs ts
11 tests
todo.export-csv
Write todos as a CSV file (RFC 4180) with one column per field, for backups, spreadsheets and other apps.
export_csv in Python
1.0.0
py rs ts
14 tests
todo.parse-quick-add
Turn one typed line like "Pay rent tomorrow !high #home every month" into a todo draft.
parse_quick_add in Python
1.0.0
py rs ts
44 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: group_by_due, group_by_due_with_order
1.1.0
py rs ts
26 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.
next_occurrence in Python
1.0.0
py rs ts
24 tests
todo.import-csv → validateTodoCsv
Read todos from a CSV file (RFC 4180) as todo.export-csv writes it, checking every row, with row-numbered errors.
validate_todo_csv in Python, one function of this group
1.1.0
py rs ts
59 tests
todo.due-label
The short English label shown next to a todo: "2 days overdue", "Due today", "Due tomorrow", "Due Fri 2 Oct".
due_label in Python
1.0.0
py rs ts
21 tests
todo.tag-counts
How many todos carry each tag, for a tag sidebar: most used first, open todos only unless asked.
tag_counts in Python
1.0.0
py rs ts
10 tests
todo.due-status
Where a todo stands against its due date today: done, overdue, today, tomorrow, this week, later or no date.
due_status in Python
1.0.0
py rs ts
19 tests
todo.normalise-tags
Clean up tags as typed: trim, drop the #, lower-case slug form, drop empties and duplicates, keep the order.
normalise_tags in Python
1.0.0
py rs ts
13 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.
parse_repeat in Python
1.0.0
py rs ts
22 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.
reschedule_recurrence in Python
1.0.0
py rs ts
14 tests
todo.recurrence-label
English text for a repeating todo's chip: "Every weekday", "Every 2 weeks on Monday", "Every month on the 31st".
recurrence_label in Python
1.0.0
py rs ts
30 tests
todo.parse-tags
Read a tags box as typed, "#Home, work errands", into normalised tags: split on spaces and commas.
parse_tags in Python
1.0.0
py rs ts
12 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.
parse_date_phrase in Python
1.0.0
py rs ts
53 tests
charity.gasds
Gift Aid Small Donations Scheme top-up for a tax year: the £8,000 limit, the matching rule and community buildings.
gasds in Python
1.0.2
py rs ts
21 tests
education.fee-instalments
Tuition fee instalment schedule from a total, shares and due dates, exact to the penny.
fee_instalments in Python
1.0.0
py rs ts
20 tests
collections.chunk
Split a list into consecutive batches of at most n items, in order; the last batch may be short.
chunk in Python
1.0.0
py rs ts
11 tests
time.duration
Parse durations written as 1h30m, 90m or 01:30, add them up in whole minutes, and format the total.
duration in Python
1.0.0
py rs ts
23 tests
charity.donation-matching
Employer match on a donation: a ratio in basis points, limited by a per-donor cap and a programme budget.
donation_match in Python
1.0.0
py rs ts
17 tests
manufacturing.bom-explode
Explode a multi-level bill of materials into exact total quantities per component, with scrap and cycle checks.
explode_bom in Python
1.0.0
py rs ts
17 tests
inventory.cycle-count-schedule
Cycle count schedule: spread each item's counts evenly over the working days of a period, by ABC class frequency.
cycle_count_schedule in Python
1.0.0
py rs ts
17 tests
money.split-even
Split an amount into n near-equal parts that add back up to exactly the whole.
split_even in Python
1.0.0
py rs ts
13 tests
manufacturing.oee
Overall equipment effectiveness (availability x performance x quality) in basis points, from times and counts.
overall_equipment_effectiveness in Python
1.0.0
py rs ts
18 tests
logistics.demurrage
Demurrage or detention charge for a container: free days, then a tiered daily rate from the carrier's tariff.
demurrage in Python
1.0.0
py rs ts
22 tests
invest.fee-drag Unreviewed
What an annual charge costs an investment over the years: value with and without the fee, year by year, in minor units.
fee_drag in Python
1.0.1
py rs ts
20 tests
logistics.container-fit
How many identical cartons fit in a 20ft, 40ft or 40ft high-cube container or a 13.6 m trailer, by space and by weight.
container_fit in Python
1.0.0
py rs ts
16 tests
inventory.abc-classification
ABC classes by annual consumption value (Pareto), with configurable cut-offs such as 80/15/5 and deterministic ties.
abc_classification in Python
1.0.0
py rs ts
17 tests
construction.materials-area
Packs of tiles, paint, plasterboard or flooring to cover an area, with waste and coats, rounded up to whole packs.
materials_area in Python
1.0.0
py rs ts
18 tests
education.cpd-hours
CPD logged against a requirement for a rolling or fixed period: minutes counted, shortfall and days left.
cpd_hours in Python
1.0.0
py rs ts
20 tests
telecoms.data-allowance
Mobile data allowance used and remaining, and the overage charge in whole blocks with an optional spend cap.
data_allowance in Python
1.0.0
py rs ts
18 tests
react.form.checkbox-group React ^19 · TypeScript only
A question answered by ticking any of several checkboxes, with item hints and an exclusive "None" (GOV.UK checkboxes).
Not available in Python
1.0.1
ts
24 tests
property.completion-statement Unreviewed
A buyer's completion statement: price less deposit, ground rent and service charge apportioned to completion, plus fees.
completion_statement in Python
1.0.1
py rs ts
15 tests
fleet.cost-per-mile
Whole-life cost per mile of a vehicle, in tenths of a penny, from depreciation, fuel, maintenance, insurance and tax.
cost_per_mile in Python
1.0.0
py rs ts
13 tests
units.convert
Convert length, mass, area, volume, temperature and energy between units, exactly, as decimal text.
convert_units in Python
1.0.0
py rs ts
31 tests
hospitality.tronc-allocation
Share a tips pool (tronc) between staff by hours worked, points, or hours times points, exactly to the penny.
tronc_allocation in Python
1.0.0
py rs ts
19 tests
money.add
Add, subtract and negate monetary amounts, refusing to mix currencies.
add_money in Python
1.0.1
py rs ts
12 tests
construction.concrete-volume
Concrete for slabs, strip footings, pads and round columns: volume to the litre and an order rounded up to 0.1 m³.
concrete_volume in Python
1.0.0
py rs ts
19 tests
money.allocate
Split an amount across ratios without losing or inventing a single minor unit.
allocate in Python
1.0.1
py rs ts
17 tests
energy.tariff-time-of-use
Cost half-hourly consumption against time-of-use rates: Economy 7 windows or Agile-style half-hourly prices.
time_of_use_cost in Python
1.0.1
py rs ts
24 tests
property.service-charge-apportion Unreviewed
Apportion a service charge across units by lease fraction, floor area or fixed percentage, exact to the penny.
apportion_service_charge in Python
1.0.1
py rs ts
19 tests