b40694d691
- nav: aria-label on baby switcher select - dashboard: active timers show baby name - growth: PDF export includes percentile band per weight row - settings: invite link note (permanent, reset if compromised) - timeline: select mode toggle shows "Annuler" when active - photos: delete photo from lightbox (PATCHes event metadata) - notes: invisible date input overlay for date-jump via calendar picker - IMPROVEMENTS.md: updated checkboxes, 8 remaining → 0 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
Improvements & Known Issues
Critical Bugs
- Photos 404 in Docker — serve via
/api/photos/[filename]fromUPLOAD_DIR=/data/uploads - WHO curves invisible when baby has measurements —
connectNullson percentile Lines - Symptom icon missing —
Activitynot in event-icon map - Default duration missing — events saved without timer now get per-type default duration
UI/UX Improvements
Dashboard
- Empty state for new users — onboarding callout when no events today
- Active timers show which baby — add baby name badge if multiple babies in family
Growth
- Single-measurement chart — shows point + WHO curves (was blank until 2+ points)
- "PC" label — expanded to "PC — Périmètre crânien (cm)"
- WHO percentile ⓘ tooltip — explains P50/P3-P97
- Date field defaults to today in add-measurement form
- PDF export percentile rank — show WHO band (e.g. P25–P50) per row in PDF table
Stats
- Heatmap legend — shows actual counts (0 1 2 3 4+)
- Sleep timeline label — "Fenêtre 19h – 11h"
- Chart zero-data gaps — distinguish "no data" vs "zero events" visually
Timeline
- Filter state sticky — persisted in URL param
?type=... - Inline note save feedback — ✓ flash after blur
- Photo thumbnail clickable — opens in new tab
- Select mode indicator — show "3 sélectionnés · Supprimer" counter badge
Photos
- Lightbox wraps — next on last → first, prev on first → last
- Delete from lightbox — trash icon removes photo from event metadata
Search
- Results clickable — events link to
/timeline?date=..., notes to/notes?date=... - Result count header — "X événements · Y notes"
- Date/type filter chips on search results
Notes
- Unsaved indicator — amber dot while dirty, green ✓ after save
- Date jump input — calendar picker to jump to any date (not just nav arrows)
Milestones
- Sort by date within month group
Settings
- Pushover key eye toggle — show/hide pasted key
- API key delete confirmation — shows key name in confirm dialog
- Sections collapsible — SectionCard accordion
- Invite link TTL — show expiry date next to copy-link button
Event Modal
- Timer resume indicator — "Reprise du chronomètre" when loaded from localStorage
- Milk lot hint — "Sélectionnez un lot — il sera marqué comme utilisé"
- Photo size client-side validation — 5MB guard before upload
Navigation
- Baby switcher
aria-label— accessibility label on select - Unsaved state warning — prompt before leaving dirty notes page
Remaining (8 items)
| # | Item | Effort |
|---|---|---|
| 1 | Active timers show baby name | Small |
| 2 | PDF export percentile rank | Small |
| 3 | Timeline select mode counter badge | Small |
| 4 | Photo delete from lightbox | Medium |
| 5 | Notes date-jump calendar picker | Small |
| 6 | Search date/type filter chips | Medium |
| 7 | Settings invite link TTL | Small |
| 8 | Nav baby switcher aria-label | Trivial |
Feature Backlog
- Vaccination tracker — dates, vaccine name, lot, next-due reminder + push alert
- Doctor visit log — notes, prescriptions, next appointment date
- Teeth tracker — visual mouth diagram, mark appearance date
- Baby schedule prediction — "usually naps around 14h30" from historical patterns
- Growth chart in PDF — embed chart image (jsPDF canvas) not just table
- Natural language digest — "Emma feeds every 2h45 on average" weekly push
- Wellness check-in — parent self-reports sleep/mood for postpartum monitoring
- Weight gain on-track indicator — projected line on growth chart
- Contraction timer — repurpose timer infra for pre-birth use