cloudflare-api
Hit the Cloudflare REST API directly for operations that wrangler and MCP can't handle well. Bulk DNS, custom hostnames, email routing, cache purge, WAF rules,…
Test website responsiveness across viewport widths using browser automation. Resizes a single session through breakpoints, screenshots each width, and detects layout transitions (column changes, nav switches, overflow). Produces comparison reports showing exactly where layouts
$ npx -y skills add jezweb/claude-skills --skill responsiveness-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/responsiveness-checkContext preview
The summary Claude sees to decide when to auto-load this skill.
Test website responsiveness across viewport widths using browser automation. Resizes a single session through breakpoints, screenshots each width, and detects layout transitions (column changes, nav switches, overflow). Produces comparison reports showing exactly where layouts
name: responsiveness-check description: "Test website responsiveness across viewport widths using browser automation. Resizes a single session through breakpoints, screenshots each width, and detects layout transitions (column changes, nav switches, overflow). Produces comparison reports showing exactly where layouts break. Trigger with 'responsiveness check', 'check responsive', 'breakpoint test', 'viewport test', 'responsive sweep', 'check breakpoints', or 'test at mobile'." compatibility: claude-code-only
Test how a website's layout responds to viewport width changes. Resizes through breakpoints in a single browser session, screenshots each width, compares adjacent sizes, and reports where layouts break.
**What this tests**: Layout responsiveness — overflow, stacking, navigation transitions, content reflow.
**What this does NOT test**: General accessibility (ARIA, semantic HTML, heading hierarchy, colour contrast). Those don't vary by viewport width — use the ux-audit skill instead.
Before starting, detect available browser tools:
1. **playwright-cli** (preferred) — supports resize, named sessions, and sub-agent parallelism. If installed, run `/playwright-cli` first to load the full command reference. 2. **Playwright MCP** (`mcp__plugin_playwright_playwright__*`) — `browser_resize` for viewport changes. 3. **Chrome MCP** (`mcp__claude-in-chrome__*`) — `resize_window` for viewport changes. Uses the user's logged-in Chrome session.
If none are available, inform the user and suggest installing playwright-cli or Playwright MCP.
**When**: "check responsive", "responsiveness check", "test breakpoints"
Test 8 key breakpoints that cover the device spectrum:
| Width | Device Context | |-------|---------------| | 320px | Small phone (iPhone SE) | | 375px | Standard phone (iPhone 14) | | 768px | Tablet portrait (iPad) | | 1024px | Tablet landscape / small laptop | | 1280px | Laptop | | 1440px | Desktop | | 1920px | Full HD | | 2560px | Ultra-wide / 4K |
**Process**:
1. Open the URL in a single browser session (height: 900px) 2. Start at 320px. For each breakpoint width: a. Resize the viewport b. Wait briefly for CSS reflow (layout transition) c. Screenshot the above-fold area d. If the page has significant below-fold content, scroll and screenshot e. Run the 8 layout checks (see matrix below) f. Note any issues with severity 3. Compare adjacent widths — identify where layout transitions occur 4. Write the report
**When**: "responsive sweep", "sweep all breakpoints", "find where it breaks"
Test every 160px from 320 to 2560 (15 widths total). Same single-session approach as Standard — just more data points. This is the mode for finding the **exact width** where a layout breaks.
Widths: 320, 480, 640, 800, 960, 1120, 1280, 1440, 1600, 1760, 1920, 2080, 2240, 2400, 2560
**Briefly confirm** before starting sweep mode (15 screenshots is a meaningful session).
**When**: "check between 768 and 1024", "test tablet breakpoints", "focus on mobile widths"
Test a user-specified range at 80px increments. Use when a known trouble zone needs detailed investigation.
Example: "check between 768 and 1024" tests: 768, 848, 928, 1008 (plus 1024 as endpoint).
When testing multiple URLs (e.g., "check the homepage, about page, and contact page"):
# Sub-agent pattern (playwright-cli) playwright-cli -s=page1 open https://example.com/ & playwright-cli -s=page2 open https://example.com/about &
These 8 checks target issues that **actually vary by viewport width**:
| # | Check | What to Look For | |---|-------|-----------------| | 1 | **Horizontal overflow** | Content wider than viewport — horizontal scrollbar appears, elements cut off | | 2 | **Text overflow** | Text truncated mid-word, overlapping adjacent elements, font size unreadable (< 12px) | | 3 | **Navigation transition** | Hamburger menu appears/disappears at correct width, no "broken" state between modes | | 4 | **Content stacking** | Multi-column layouts stack to single column in logical reading order on narrow widths | | 5 | **Image/media scaling** | Images overflow container, distorted aspect ratios, missing responsive sizing | | 6 | **Touch targets** | Interactive elements < 44px on mobile widths (< 768px) — buttons, links, form inputs | | 7 | **Whitespace balance** | Too cramped on mobile (no breathing room), too sparse on wide screens (content lost in space) | | 8 | **CTA visibility** | Primary call-to-action visible above the fold at each width without scrolling |
The unique value of this skill is **finding where layout transitions happen** and whether they're clean.
When comparing screenshots at adjacent widths, flag any width where:
Report the **exact width range** where each transition occurs:
| Transition | From | To | Width Range | |-----------|------|-----|-------------| | Nav: hamburger → full | 768px | 1024px | Switches at ~960px | | Grid: 1-col → 2-col | 640px | 768px | Reflows at ~700px | | Sidebar appears | 1024px | 1280px | Shows at ~1100px |
This tells the developer exactly where to set (or fix) their CSS breakpoints.
Consistent with ux-audit:
| Severity | Meaning | |----------|---------| | **Critical** | Layout is broken — content unreadable, navigation inaccessible, page unusable | | **High** | Significant layout issue — major overflow, key content hidden, b
Production workflow skills for Claude Code. Each skill guides Claude through a recipe to produce tangible output — scaffolded projects, generated assets, professional documents, deployed services. Ten plugins of practical, production-oriented skills.
Repo: jezweb/claude-skills
Hit the Cloudflare REST API directly for operations that wrangler and MCP can't handle well. Bulk DNS, custom hostnames, email routing, cache purge, WAF rules,…
Scaffold and deploy Cloudflare Workers with Hono routing, Vite plugin, and Static Assets. Describe project, scaffold structure, configure bindings, deploy. Use…
Generate Drizzle ORM schemas for Cloudflare D1 databases with correct D1-specific patterns. Produces schema files, migration commands, type exports, and…
Cloudflare D1 migration workflow: generate with Drizzle, inspect SQL for gotchas, apply to local and remote, fix stuck migrations, handle partial failures. Use…
Generate database seed scripts with realistic sample data. Reads Drizzle schemas or SQL migrations, respects foreign key ordering, produces idempotent…
Scaffold Hono API routes for Cloudflare Workers. Produces route files, middleware, typed bindings, Zod validation, error handling, and API_ENDPOINTS.md…