Files
dickloads/BACKLOG.md
2026-03-18 23:07:05 -04:00

2.0 KiB

humor-units Backlog

Items are roughly ordered by priority. Move to DONE when shipped.


TODO

Uniform font size

Get actual text measurements of output card values and render all cards in a group at a uniform font size. JS must be minimal — no heavy layout libraries. The requirement is real uniformity based on measurements, not "close enough."

Custom dropdown (typeahead fix)

Native <select> accumulates keystrokes into a browser-managed search string. Switching letters requires backspace to clear the accumulated string first. Fix requires replacing the native select with a custom dropdown component that handles keyboard search with a clean reset-on-idle timer.


DONE

  • Hidden flag on Unit and Group (server-side filtered, admin checkbox)
  • Description placeholders: {id}, {id:label}, {id:plural}, {id:symbol}, {id:description} Two-pass resolver with cycle fallback to Label (symbol)
  • Drag handle contrast fix (opacity on --pico-color, primary-inverse on selected rows, magenta in Dan Mode)
  • Custom tooltip (500ms hover delay, no mouse movement required, Dan Mode styled)
  • ⓘ indicator on units with descriptions
  • Enter to save / Escape to discard in admin forms
  • Auto-save on unit/group selection in admin
  • Domain-based branding (humorunits.com / dickloads.com) via src/lib/brand.ts
  • YOLO toggle visibility: auto (show when >1 group) or never — admin Settings panel
  • Group alwaysShowLabel flag
  • Production server setup (npm run start / build:watch + serve with nodemon)
  • Editable unit/group IDs with full cascade (group refs, baseUnitId refs, {id:*} in descriptions)
  • Alpha sort tiebreak: labelPlural primary, symbol secondary
  • Infinite loop fix: $effect → onMount + in-flight guards on loadData/loadConfig
  • Sort-alpha button per group in admin tree (⇅)
  • Settings button moved to admin header
  • sortPosition pin: optional 1-based fixed slot per unit, inserts into float list
  • Dropdown optgroup dividers matching group order and visibility rules