plugins/design-expert/skills/design-ios/SKILL.md
iOS + macOS mockups and handoff specs — Dynamic Type scale, semantic colors, device viewports, Liquid Glass, macOS text/window/pointer conventions, device-framed HTML mockup, and a SwiftUI-ready handoff spec. Produces tokens + mockup only, never SwiftUI code.
npx skillsauth add fusengine/agents design-iosInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
After design-system tokens exist. This skill never writes SwiftUI — it produces a
static HTML mockup at exact device/window dimensions plus a spec that swift-expert or
an Apple-platform developer implements.
design-system.md — OKLCH palette, typography direction, motion personality.references/dynamic-type.md.
Colors → semantic color roles (never raw RGB/hex) — see references/semantic-colors.md.references/viewports.md — mock up in exact
points at the chosen scale factor.<div> at the exact viewport dimensions,
viewport-fit=cover meta tag, env(safe-area-inset-*) for notch/Dynamic Island/home
indicator spacing. See references/mockup.md.references/liquid-glass.md — do not invent numeric corner-radius values; none are
published.references/touch-targets.md); 4.5:1 minimum contrast in Dark Mode for body text
(WCAG AA, HIG-endorsed) — check both light and dark against
references/semantic-colors.md roles, not a single-mode check.references/handoff-swiftui.md: named tokens only
(never raw values), Dynamic Type text styles (never fixed sizes), semantic colors,
explicit sizing behavior (fixed/hug/fill) per element, all interaction states
(disabled/pressed/focused), spacing in pt.references/handoff-swiftui.md, adapted: macOS text
sizes instead of Dynamic Type styles, hover/pressed/focused states (pointer, not touch),
otherwise same named-token discipline.handoff.md (or equivalent) with named tokens, text styles, semantic colors, sizing,
states, spacing — ready for swift-expert.design-review (mockup-scoped: screenshot the mockup, verify contrast, nofull site audit loop).
| File | Purpose |
|------|---------|
| references/dynamic-type.md | Canonical iOS Dynamic Type scale (Large) — verified iosfontsizes.com |
| references/semantic-colors.md | Canonical semantic color roles — verified WWDC19, still current |
| references/viewports.md | Canonical iOS device viewports in points — verified ios-resolution.com |
| references/liquid-glass.md | Canonical Liquid Glass facts — verified developer.apple.com, iOS 26 |
| references/touch-targets.md | 44×44pt target — HIG-sourced, flagged for reconfirmation |
| references/mockup.md | Device-frame HTML/CSS technique (safe areas, viewport-fit) |
| references/handoff-swiftui.md | SwiftUI-ready handoff spec format |
Gap (not covered by any reference file, inlined above from HIG, flagged for a future
references/macos.md): macOS type-size anchors, no-Dynamic-Type rule, system window
chrome, desktop tinting, pointer states. Out of this pass's exclusive scope to create.
testing
Copy self-audit and ban-lists — filler verbs/hype adjectives, slop placeholder names, fake-precise numbers, Title Case headlines, humor in error copy ('Oops!'), em-dash crutch, one copy register per page.
development
Logged-in web apps — dashboards, auth flows, settings, onboarding, data tables, command palettes, modals, toasts. Register `product`: density and glance-speed over marketing polish, no hero/CTA-tricks, every data surface covers empty/loading/error explicitly, tables and dataviz follow preattentive-processing rules.
development
Marketing sites, landing pages, campaign pages — register `brand` (design IS the product). Structure comes from the register's POV + a macrostructure pick, never from copying an inspiration site's section flow. Hero discipline, deviated section order, asymmetric grids, and a silhouette lookalike-test gate before ship.
development
Token-strategy core — OKLCH color rules, neutral tinting, accent-commitment levels, type scale, 8pt spacing grid, touch targets, and the canonical output format of design-system.md (the file the harness gates on). This is routing step 1 of design-method/SKILL.md — read it before design-web/design-webapp/design-ios/design-android, before picking or auditing a single color/type/spacing value.