Skip to content

v0.1.0-alpha.207

Choose a tag to compare

@github-actions github-actions released this 14 May 23:18
· 13 commits to main since this release
v0.1.0-alpha.207 - composer click-target + in-app viewer modal

Two fixes addressing the same week of user complaints:

1. Composer was hard to focus.

   Before: only the literal textarea rectangle was clickable.
   Form padding (p-5) and the action-row strip (~45px tall) were
   dead zones - clicks there did nothing, which read as "this
   thing doesn't accept input." Also rows=1 made the textarea
   look like a single-line input even though it auto-grows.

   After:
   - Click anywhere inside the composer card focuses the textarea
     (form onClick handler, with closest('button, a, input,
     select, textarea') guard so the send button still works).
   - rows=3 sets initial visible height to ~3 lines so the
     composer reads as "accepts a paragraph."
   - min-h-[160px] on the form so even short content has a
     generous click target.
   - cursor: text on the form so the surface hints at being
     typeable.

2. Discovery cards opened in a new tab.

   Before: clicking a card was a full window.location nav -
   visitor leaves the SignInGate, loses context.

   After: clicking opens an in-app viewer modal -
   - Video items: native <video controls autoPlay> filling the
     content area. Poster image shows briefly during load.
   - Site/app items: sandboxed <iframe src> filling the viewer
     (X-Frame-Options blocks some targets; the header has an
     "Open in new tab" affordance for those cases).
   - Placeholder cards (the "Your project here" tile) show a
     soft "Type a prompt to start" panel instead of an empty
     iframe.
   - Modal closes on Esc, backdrop click, or X button.
   - Body-scroll lock while open; restored on close.
   - Middle-click / cmd-click / shift-click on a card still
     opens in a new tab (the href is preserved on the <a>; only
     plain left-click is intercepted).

Branding stays qlaud throughout - red primary for the open-in-tab
link, bg-card surfaces, qlaud-tokened typography. Vibesdk's flat
neutral palette intentionally NOT adopted; the viewer reads as a
qlaud surface, not a generic gallery.