Skip to content

feat(mobile): make the builder fully responsive#65

Merged
zhawtof merged 1 commit into
mainfrom
claude/angry-darwin-f76e7b
May 16, 2026
Merged

feat(mobile): make the builder fully responsive#65
zhawtof merged 1 commit into
mainfrom
claude/angry-darwin-f76e7b

Conversation

@zhawtof
Copy link
Copy Markdown
Contributor

@zhawtof zhawtof commented May 16, 2026

Summary

  • Adds a useIsMobile hook (matching Tailwind's md breakpoint) and reworks the builder UI so it's usable on phones.
  • Palette: persistent left aside on desktop, bottom-sheet on mobile (triggered by a new "Blocks" button in the toolbar). Tap-to-add closes the sheet so the user sees the new row land in the surface.
  • Toolbar: wraps when narrow, collapses surface/theme labels behind icons on small screens, gains aria-labels so icon-only buttons stay accessible.
  • DnD: adds TouchSensor (150ms press-and-hold so the surface can still scroll) and KeyboardSensor for non-pointer reordering.
  • Block row floating action toolbar is hidden on mobile in favor of the inline row beneath each block (already in place).
  • Misc spacing / overflow fixes across surface, sheet, dialogs.

The demo-app refactor that was in this branch before the rebase was dropped to avoid undoing PR #54's resizable templates panel — the library mobile work is what matters here, and the demo can be polished for mobile separately.

Test plan

  • pnpm lint clean
  • pnpm typecheck clean
  • pnpm test — 217 / 217
  • Open the deployed preview at desktop and mobile widths and confirm:
    • Palette opens as a bottom sheet on mobile (toolbar "Blocks" button), as an aside on desktop
    • Toolbar wraps cleanly at ~375px; surface/theme labels collapse to icons
    • Long-press on a block on a touch device starts a drag; tap edits cleanly
    • Keyboard reorder still works (Tab to drag handle, Space + arrows)

🤖 Generated with Claude Code

Adds a mobile breakpoint (`useIsMobile` hook, matching Tailwind's `md`)
and reworks the UI so the builder is usable on phone-sized viewports:

- Palette: persistent left aside on desktop, bottom-sheet on mobile
  (triggered from a new "Blocks" button in the toolbar). Tap-to-add
  closes the sheet so the user sees the new row land in the surface.
- Toolbar: wraps when narrow, collapses surface/theme labels behind
  icons on small screens, and grows aria-labels so the icon-only
  buttons stay accessible.
- DnD: adds TouchSensor (150ms press-and-hold so the surface can still
  scroll) and KeyboardSensor for non-pointer reordering.
- Surface, block row, sheet, dialogs: misc spacing and overflow fixes
  so nothing escapes the viewport.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
block-kitchen f2fc3d9 Commit Preview URL

Branch Preview URL
May 16 2026, 05:45 PM

@zhawtof zhawtof merged commit 5bee7cd into main May 16, 2026
12 checks passed
@zhawtof zhawtof deleted the claude/angry-darwin-f76e7b branch May 16, 2026 17:48
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.

1 participant