Decos: castle slightly higher (90 → 70) + phoenix slightly lower (660 → 690) da9c816 drenayaz commited on Jun 1
Decos: drop sorting hat down to top: 670 for better balance with phoenix 1b69da9 drenayaz commited on Jun 1
Decos: push bunny down to balance with castle / phoenix on the left column, nudge cat for vertical centering b3df532 drenayaz commited on Jun 1
Decos: bigger gap (80px) from frame + fixed-pixel vertical positions (no more drift on resize) ac6df49 drenayaz commited on Jun 1
Decos: more frame-edge gap (50px) + clamp vertical positions to stable ranges to limit drift on resize e996e23 drenayaz commited on Jun 1
Decos: anchor to the frame's edges (not viewport) so they keep a constant gap on resize + center bunny between castle and phoenix dacf0b2 drenayaz commited on Jun 1
Decorations: nudge inward (5% → 8%) + grow ~10% + drop the bunny tableau down to top: 30vw 4322e94 drenayaz commited on Jun 1
Decorations: drop the max-height media query — let them stay anchored and clip if needed, like the frame 3b6f2c9 drenayaz commited on Jun 1
Decorations: vertical positions in vw (not %) so they stay fixed when viewport height shrinks, matching the central frame 529991e drenayaz commited on Jun 1
Decorations: hide corner decos when viewport height < 800px so they don't pile up when the frame can't fit either a7e65d5 drenayaz commited on Jun 1
Decorations: explicit deco-frame / deco-overlay / deco-portrait roles fix multi-image stacking and zero-height single slots e2fcec2 drenayaz commited on Jun 1
Decorations responsive: width-only sizing in vw/px + height auto from image aspect ratio (no more box distortion) 111d825 drenayaz commited on Jun 1
Shutter click via robot speaker: render WAV with OfflineAudioContext, pre-upload at boot, play via reachy on flash f179b53 drenayaz commited on Jun 1
Add synthesised shutter click via WebAudio, fired in sync with the gold-star flash a33cea0 drenayaz commited on Jun 1
Post-capture celebration: await pre-shot end → 1s transition → success2 with synced audio → return to base 94bf619 drenayaz commited on Jun 1
Play enthusiastic1 emotion after capture (both modes) — Reachy celebrates while photo is shown 7fb9edc drenayaz commited on Jun 1
Animation: restore gold star flash between countdown end and capture (~180ms beat) ddf435e drenayaz commited on Jun 1
Animation: 1s goto-first-pose, then move + 3s countdown in sync, capture at t=3 (no flash) 29a2094 drenayaz commited on Jun 1
Animation: start countdown at the beginning of the move, capture lands ~2.25s in 2d9c3e6 drenayaz commited on Jun 1
Use custom cdeplanne/photobooth/move-1 for pre-shot anim instead of generic emotion f1b4c8f drenayaz commited on Jun 1
Magic Start: re-enable the button on success path so it's clickable again after returning to menu 02db5b7 drenayaz commited on Jun 1
Key validation: clear inline error on every retry/edit so stale messages don't linger b1a2de8 drenayaz commited on Jun 1
Validate Gemini key at Magic Start click — ping /models endpoint, block UI until verdict, inline error message 824c7e1 drenayaz commited on Jun 1
Icon: switch from cyan/mint to gold-on-brown to match the photobooth DA 60bf6be drenayaz commited on Jun 1
DA: shrink center frame slightly (max 880px / 58vw) so Change-mode link gets breathing room ed974e7 drenayaz commited on Jun 1
DA: widen container so center frame isn't cropped + slightly shrink corner decorations 30c102c drenayaz commited on Jun 1
DA: drop the SAY REACHEESE banner + grow center frame to 980px/64vw + enlarge corner decorations 9e4291f drenayaz commited on Jun 1
Mode B: pre-upload greeting audio to robot at prefetch time so click→speech is just the play handshake (~200ms) 1e6bbf7 drenayaz commited on May 29
Mode B: re-prefetch on setUserName + await pending prefetch in say() before falling through cf42c82 drenayaz commited on May 29
Mode B: fetch first name from HF whoami + pre-cache greeting TTS when key is saved 28d18c6 drenayaz commited on May 29
Mode B: warmer personalised greeting using HF username + casual phrasing 7b528e6 drenayaz commited on May 29
Mode B: skip Gemini chat call for fixed greeting (saves 1-3s) + remove .container overflow (centred scrollbar bug) 85fd0c5 drenayaz commited on May 29
Menu: stop stretching cards to full viewport height — restore natural size, push down with margin-top 2ae1471 drenayaz commited on May 29
Menu: restore card frames + hide corner decorations on menu view only 1e88df1 drenayaz commited on May 29
Menu: drop card frames + center cards in viewport + replace Magic wand with 3-star sparkle 10bad37 drenayaz commited on May 29
Lock page scroll: viewport fixed 100dvh, container scrolls internally if content overflows e65230e drenayaz commited on May 29
DA: pull corner decorations further inward (8%) and shrink slightly 6f2c536 drenayaz commited on May 29
DA: pull corner decorations inward (4-5% margins) for better breathing room 3204d8e drenayaz commited on May 29
DA overhaul: photobooth corner decorations + gold SVG icons replace emojis + slim hero + mobile responsive pass c0e6297 drenayaz commited on May 29
Mode B: route 'Hold still' through robot-speaker path (was using browser-only speak) 5ee5630 drenayaz commited on May 29
Gemini TTS: try 2.5 (free-tier accessible) first, fall back to 3.1 preview 60772c6 drenayaz commited on May 29
Mode B: route TTS through Gemini + play on robot speaker (gemini-3.1-flash-tts-preview Puck voice) e27ba90 drenayaz commited on May 29
Mode B: real multi-turn dialog with Gemini text chat — greeting + follow-up questions + ready signal a2281de drenayaz commited on May 29
Mode B: dump all available TTS voices on first speak() for diagnosis 0c826eb drenayaz commited on May 29
Mode B TTS: pick natural/neural voice when available + livelier pitch + script tweaks 7886bcc drenayaz commited on May 29
Mode B speak(): dedupe voiceschanged-vs-timeout race that interrupted first utterance bda4c12 drenayaz commited on May 29