mobile-webapp-ux
Skill176 starsChanged 7 months agoMITView on GitHub
Design, build, or review responsive mobile web-app UX when a phone experience needs task-first layout, usable touch controls, compact media comparison, mobile navigation, overlays, forms, or responsive validation without degrading the desktop experience. Use for requests to make an existing web app work well on phones, fit a task into one mobile viewport, improve tap targets, adapt comparison/review screens, or audit mobile usability.
We split this skill into the rules it gives an agent
18 rules. About 0 are common, 14 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Treat the phone as a distinct task surface, not a narrower desktop canvas.
- Distinctive: line 21
Keep the current task, its evidence, and its primary action visible together whenever practical.
- Distinctive: line 23
Prefer a concise mobile-specific composition over merely scaling down desktop spacing.
- Distinctive: line 24
Keep secondary operations available but visually subordinate: overflow, disclosure, an anchored utility area, or a later section.
- Distinctive: line 26
When a head-to-head visual review is the requested task, use this default hierarchy:
- Distinctive: line 33
Do not stack the two candidates vertically when the comparison itself is the primary task, unless the images cannot remain legible side by …
- Very specific: line 39
Use a modal lightbox for detail.
- Distinctive: line 40
Keep the image pair’s cards the same visual weight.
- Distinctive: line 41
Avoid putting important voting controls below a very tall image by default.
- Distinctive: line 46
Keep labels on primary actions.
- Distinctive: line 47
Put destructive or recovery actions apart from the main action row.
- Distinctive: line 48
Never rely on hover for critical information or controls.
- Distinctive: line 53
When the product does not already define a supported narrow viewport, use 390 × 844 as a practical reference rather than creating a new …
- Very specific: line 54
Use a two-column grid for compact comparisons: grid-template-columns: minmax(0, 1fr) minmax(0, 1fr).
- Very specific: line 56
Use dvh for viewport-constrained media and overlays where browser chrome changes can otherwise cause clipping.
- Very specific: line 58
Do not make an entire page overflow: hidden on mobile unless the current task is deliberately designed to fit and every needed control …
- Distinctive: line 62
After implementation, inspect the rendered app at the agreed narrow reference viewport.
- Distinctive: line 72
If browser control is available and visual mobile QA is requested, use it for this check.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Mobile Web-App UX
Treat the phone as a distinct task surface, not a narrower desktop canvas. Preserve the desktop contract unless the requested behavior genuinely differs.
Apply this skill to the requested mobile loop and the responsive states closest to it. The patterns below are recommendations unless accessibility, reachability of the primary action, or prevention of data loss makes one blocking. A mobile review is read-only unless implementation was requested. Stop when the named loop works at the agreed narrow viewport and its existing desktop counterpart; report unrelated redesign opportunities separately.
Start with the mobile task loop
Identify the smallest repeated loop the user needs to complete: inspect → decide → act; scan → filter → open; compose → send. Make that loop dominant in the first viewport.
- Keep the current task, its evidence, and its primary action visible together whenever practical.
- Reduce decorative chrome, repeated headings, descriptive copy, and secondary metadata before reducing the primary action.
- Prefer a concise mobile-specific composition over merely scaling down desktop spacing.
- Keep secondary operations available but visually subordinate: overflow, disclosure, an anchored utility area, or a later section.
When a head-to-head visual review is the requested task, use this default hierarchy:
- Two equal, side-by-side candidate thumbnails.
- Large, labeled voting controls immediately beneath the candidates.
- Tap-to-expand media in a full-detail lightbox.
- Skip, undo, tags, annotation, exports, and history below or compacted.
Do not stack the two candidates vertically when the comparison itself is the primary task, unless the images cannot remain legible side by side at the supported minimum width.
Media and detail inspection
- Constrain inline media by viewport height and use
object-fit: containwhen framing or full outfit/body visibility matters. - Make media an obvious button with a visible focus style and an accessible label. Do not require tiny zoom controls to inspect detail.
- Use a modal lightbox for detail. Provide a close button, backdrop dismissal,
Esc, focus management, and scroll locking. - Keep the image pair’s cards the same visual weight. Do not let different source aspect ratios change the comparison hierarchy.
- Avoid putting important voting controls below a very tall image by default.
Touch controls
- Make the primary action row visually strongest and easy to hit: target at least 44 × 44 CSS px; use roughly 48–56 px height for repeated vote buttons when space permits.
- Keep labels on primary actions. Icon-only controls are for unmistakable secondary actions with an accessible label and tooltip.
- Put destructive or recovery actions apart from the main action row. Make undo available after fast, high-frequency actions.
- Never rely on hover for critical information or controls.
- Preserve keyboard shortcuts for desktop users, but never make mobile completion depend on them.
Responsive layout rules
- When the product does not already define a supported narrow viewport, use 390 × 844 as a practical reference rather than creating a new product-wide support contract.
- Use a two-column grid for compact comparisons:
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr). - Prevent labels, chips, and candidate IDs from forcing cards wider; allow controlled ellipsis or hide nonessential metadata.
- Use
dvhfor viewport-constrained media and overlays where browser chrome changes can otherwise cause clipping. - Hide or compact desktop-only status strips and verbose introductory copy in a task-focused mobile view; retain access through an alternate route or disclosure if needed.
- Do not make an entire page
overflow: hiddenon mobile unless the current task is deliberately designed to fit and every needed control remains reachable.
Validate the actual phone experience
After implementation, inspect the rendered app at the agreed narrow reference viewport. Select the checks relevant to the requested loop:
- Both compared items are visible simultaneously.
- The primary actions are in the initial viewport and are comfortably tappable.
- The initial decision loop requires no vertical scroll, or any intentional scroll is obvious and minimal.
- Image expansion opens, renders, and closes correctly;
Escand backdrop close work. - Long labels, localized text, loading states, and small screens do not overlap or hide actions.
- Desktop layout and shortcuts still work at the existing desktop breakpoint.
If browser control is available and visual mobile QA is requested, use it for this check. Otherwise validate the layout structurally and state the limitation rather than claiming a visual result.
Avoid
- Treating mobile as only
font-sizeand padding reductions. - Stacking comparison media vertically while moving the vote controls out of view.
- Hiding labels from the main action buttons to save a few pixels.
- Requiring pinch zoom because inline media is too small without offering a lightbox.
- Putting export, settings, and annotations ahead of the core task.
- Breaking desktop keyboard or pointer workflows in the course of the mobile adaptation.
In this repository101 other files it gives its agents.
- AGENTS.mdAGENTS.md
- accelevents-apiSkill
- accelevents-speaker-syncSkill
- agents-sdkSkill
- ai-devblogSkill
- ai-engineeringSkill
- ai-readmeSkill
- align-meSkill
- annotated-video-productionSkill
- antislop-codebaseSkill
- app-ux-paradigmsSkill
- autoreviewSkill
- babysit-runsSkill
- blog-system-designSkill
- cassandra-creatorSkill
- ceo-creatorSkill
- claude-session-introspectSkill
- cli-uxSkill
- cloudflare-do-turn-based-multiplayerSkill
- cloudflare-email-serviceSkill
- cloudflare-one-migrationsSkill
- cloudflare-oneSkill
- cloudflare-production-builderSkill
- cloudflareSkill
- conference-developer-endpointsSkill
- conference-transcribeSkill
- coordinateSkill
- data-chatbotsSkill
- data-visualization-qualitySkill
- deep-trajectory-analysisSkill
- design-apps-with-imagegenSkill
- design-preferencesSkill
- diy-netlifySkill
- download-videoSkill
- download-x-videoSkill
- durable-objectsSkill
- europe-developer-apiSkill
- face-matchingSkill
- forgeSkill
- future-onlySkill
- generalizeSkill
- gsuite-setupSkill
- keep-it-simpleSkill
- latent-space-thumbnail-directorSkill
- live-ai-pipelinesSkill
- location-inputSkill
- long-running-operation-uxSkill
- media-heavy-workflowsSkill
- media-to-wiki-pipelineSkill
- media-transformSkill
- mobile-nativeSkill
- multimodal-extractionSkill
- new-mac-setupSkill
- next-stepsSkill
- observability-hardeningSkill
- person-profile-writingSkill
- podcast-publishing-assistantSkill
- productionize-app-with-servicesSkill
- programmatic-agentsSkill
- provision-model-keysSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

