p1 — Add Transaction form UX polish
Problem
Add Transaction is the most-used form in the app. Current flow has friction: amount is blank every time, category dropdown is a flat unsorted list, no memory of recent picks.
Outcome
A form that anticipates the next entry rather than starting from zero.
Acceptance
- [ ] Amount autofill: pre-fill with the last transaction's amount for the selected category (e.g. select "Parking" → 5000 appears)
- [ ] Category autocomplete: typeahead search on category name; jump straight from amount → typing category name → enter
- [ ] Recently used categories surfaced at the top of the dropdown (last ~5 picks)
- [ ] Date defaults to today but stays editable in one tap/click (current behavior — verify)
- [ ] Works inside the modal context (not just a standalone page)
Notes
- Recent-categories list can live in
localStorage (no need for a server round-trip) — but invalidate when a category is renamed/deleted.
- Autofill should be opt-out: a small "✕" to clear if the suggestion is wrong, no surprise overwrites.
Implications
If skipped
- Every manual entry starts from zero — amount blank, long unsorted category list, no memory of recent picks. That friction hits the highest-frequency action in the app and makes offline-first enqueue feel slower than it should.
Why this priority
- p1 — not launch-blocking (auth and core CRUD ship without it), but it is the highest-touch UX surface after launch. Small incremental wins here compound daily; worth doing before broader dashboard polish.
When shipped
- Repeat entries (parking, coffee, same merchant) take seconds instead of a dozen taps.
Source
docs/todo.md — High Priority › User Experience Improvements.