Skip to content

feat(ui): group notes into perceptual families + filter every chip - #246

Merged
rvnminers-A-and-N merged 1 commit into
mainfrom
feat/ui-picker-cleanup
Jul 28, 2026
Merged

rvnminers-A-and-N merged 1 commit into
mainfrom
feat/ui-picker-cleanup

Conversation

@rvnminers-A-and-N

Copy link
Copy Markdown
Collaborator

Closes #223. Part of #240.

The Studio picker rendered 305 chips β€” 178 of them odour notes in one flat alphabetical row. You had to already know the vocabulary to find anything in it, which is exactly the "not user friendly unless you built it" problem.

Notes now group into 15 perceptual families a flavorist actually thinks in β€” Citrus, Fruity, Floral, Green & vegetal, Spice, Wood/resin/amber, Sweet & bakery, Dairy & fatty, Savoury & sulfur, Earthy/tobacco/leather, Fresh/cool/marine, Animalic & musk, Sharp & chemical, Base taste β€” each with its own count. The largest block is 27 chips instead of 178. Coverage was validated against the live term list: all 178 map cleanly, no duplicates across families, no typos. Anything unmapped falls into Other so a newly-trained head is never silently dropped from the picker β€” today that's just odorless.

Adds one filter box across every chip (flavors, notes and sensations). Non-matching chips hide, then empty chip rows, family blocks and whole sections collapse, so filtering never leaves orphan headings behind; a "no match" hint appears when nothing survives. Chips you've already selected stay visible while you type, so your picks don't vanish mid-search and the selection count stays honest. Every note chip also picked up its AROMA_HELP blurb as a tooltip.

Frontend only β€” workbench.html is read per request, so no restart and no model/index rebuild. ruff check . clean and 25 unit tests pass.

Note: #234 (underscore vs concatenated note dupes) turned out to be already fixed β€” the live term list has no underscore names at all, so nothing to dedupe. Closing it separately.

The Studio picker rendered 305 chips, 178 of them odour notes in a single flat
alphabetical row β€” you had to already know the vocabulary to find anything.

Notes are now grouped into 15 perceptual families a flavorist actually thinks in
(Citrus, Fruity, Floral, Green & vegetal, Spice, Wood/resin/amber, Sweet & bakery,
Dairy & fatty, Savoury & sulfur, Earthy/tobacco/leather, Fresh/cool/marine,
Animalic & musk, Sharp & chemical, Base taste), each with its own count. The largest
block is 27 chips instead of 178. Any head not in the map lands in "Other", so a
newly-trained descriptor is never silently dropped from the picker β€” today that is
just `odorless`.

Adds one filter box across ALL chips β€” flavors, notes and sensations. Non-matching
chips hide, then empty chip rows, family blocks and whole sections collapse so
filtering never leaves orphan headings behind, and a "no match" hint appears when
nothing survives. Chips you have already selected stay visible while you type, so
your picks never vanish mid-search and the count stays honest. Every note chip also
gained its AROMA_HELP blurb as a tooltip.

Signed-off-by: Austin L. <86896075+rvnminers-A-and-N@users.noreply.github.com>
@rvnminers-A-and-N
rvnminers-A-and-N merged commit 792efae into main Jul 28, 2026
4 checks passed
@rvnminers-A-and-N
rvnminers-A-and-N deleted the feat/ui-picker-cleanup branch July 28, 2026 11:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(ui): group aroma heads into perceptual families (fix the 20-30 flat-chip overload)

1 participant