mcpbeat

Adapt

educlopez/ui-craft-.gemini-adapt

Responsive layout pass covering breakpoints, touch targets, safe areas, and fluid type. Use when the UI has layout or touch issues on mobile/tablet, when adding a new screen that hasn't been tested across viewports, or when the user says "make it responsive" / "fix mobile layout". Invoke when the user asks for adapt on their UI, or mentions 'adapt' alongside design / UI / frontend work.

This is a copy. The original lives at educlopez/adapt.

770 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
237
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/educlopez/ui-craft --skill adapt

The instruction itself

as written by the author

<!-- HARNESS MIRROR — do not edit here. Canonical source: skills/ or commands/. After editing source, copy into cli/assets/<harness>/ and repo-root harness mirrors. -->

Context: this sub-skill is one lens of the broader ui-craft skill. If the ui-craft skill is also installed, read its SKILL.md first for Discovery + Anti-Slop + Craft Test, then apply the specific lens below.

Adapt the UI at $ARGUMENTS across devices. Load the ui-craft skill and read references/responsive.md.

Work mobile-first. Don't shrink desktop; grow from mobile.

Checklist:

  • Breakpoints — use project's existing system (Tailwind: sm md lg xl; CSS: container queries preferred over media queries for components). No magic widths.
  • Touch — tap targets ≥ 44×44px (min-h-11 min-w-11). Touch zones don't overlap. touch-action: manipulation on interactive elements.
  • Safe areaspadding-top: env(safe-area-inset-top) etc. on fixed headers/footers/FAB. Check iOS notch and Android gesture bar.
  • No horizontal scroll at 320px. Test with devtools device mode.
  • Fluid typeclamp(1rem, 0.9rem + 0.5vw, 1.125rem) for body where scale matters; fixed px for small UI text (labels, captions).
  • Container queries — prefer @container over viewport media queries for component-level responsiveness. Components that live in sidebars and main content behave differently at the same viewport width.
  • Hover-less devices — every hover affordance has a non-hover equivalent. @media (hover: hover) to scope desktop-only effects.
  • Density shifts with viewport — honor VISUAL_DENSITY differently per breakpoint:
  • VISUAL_DENSITY ≤ 3 → fewer columns and wider spacing even at desktop widths.
  • VISUAL_DENSITY 8+ → honor dashboard density, but still respect touch/hover distinctions (touch targets stay ≥ 44px on mobile, hover affordances gated behind @media (hover: hover)).
  • Mobile always trends toward 1 column and wider spacing regardless of the knob value.
  • Imagesaspect-ratio set; srcset + sizes for different viewports; loading="lazy" below the fold; fetchpriority="high" on hero.

10. Nav pattern — desktop horizontal → mobile collapses (sheet, drawer, or bottom tabs). Never a hamburger on desktop unless the nav has > 7 top-level items.

Output: edit code directly. Print the Review Format table of changes. Flag any responsive bugs you can't fix without more info (missing design for a breakpoint, unclear nav pattern).

Next step: /audit — verify the responsive pass against a11y, performance and touch targets (rung 1).

How to use it

Copy the folder

Take educlopez/ui-craft-.gemini-adapt from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.