You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vibed/.beans/vibed-p2es--bit-by-bit-allo...

27 lines
1.3 KiB
Markdown

---
# vibed-p2es
title: 'bit-by-bit: allow arbitrary emoji for habits, not just the curated list'
status: todo
type: feature
created_at: 2026-07-14T18:53:47Z
updated_at: 2026-07-14T18:53:47Z
---
User request: habits should accept any emoji, not only the 24 curated options in the picker.
Current behavior: the emoji picker is a native <select> with ~24 curated emoji plus "🎲 Auto" (chosen during onboarding and in Settings → Habits).
Desired: user can type/paste any emoji (or grapheme) of their choosing, while keeping the curated list as quick suggestions.
Implementation notes (for whoever picks this up):
- Replace or augment the <select> with a small free-text input (maxlength ~4 to allow multi-codepoint emoji like 👨‍🌾; validate with Intl.Segmenter or a grapheme-aware check, falling back to length caps).
- Sanitize: trim, take the first grapheme cluster; empty → auto-assign as today.
- Keep keyboard accessibility and the 🎲 Auto option.
- Applies to both the onboarding wizard and Settings → Habits (add + rename flows).
- Export/import already stores emoji as plain strings, so no data model change expected.
- [ ] Free-form emoji input in onboarding
- [ ] Free-form emoji input in Settings → Habits
- [ ] Grapheme-aware validation + auto fallback
- [ ] Verify in real browser (screenshots)