Mobile App Skill

SkillMedia

mobile-app is a skill that lets an AI agent produce a realistic mobile app screen mockup rendered inside a pixel-accurate iPhone 15 Pro frame. The agent copies a ready-made HTML template, picks one of six screen layouts such as a feed, profile, or checkout, and fills it in to match the request.

Use Mobile App Skill in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Mobile App Skill and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Mobile App Skill skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Have the skill's files available, including the seed assets/template.html and references/layouts.md.

Mobile App SkillStart free

What your AI can do with it

  • Renders a mobile app screen inside a pixel-accurate iPhone 15 Pro frame
  • Builds mockups by copying the seed assets/template.html
  • Fills in one of six screen archetypes from references/layouts.md
  • Maps the project's design-system colors and fonts onto the template
  • Runs a self-review checklist on tap-target sizes and accent color limits
  • Checks the mockup for correct device details

Getting started

  1. Have the skill's files available, including the seed assets/template.html and references/layouts.md.
  2. Give the agent a brief that asks for a mobile app, iOS app, Android app, phone screen, or app UI.
  3. Have the agent copy the seed template and paste one screen archetype from the layouts reference.
  4. Provide the project's design-system colors and fonts so they can be mapped onto the template.
  5. Let the agent run its self-review checklist covering tap-target sizes, accent color limits, and device details.

What this skill tells your AI

The instructions your AI receives, as published by nexu-io/open-design in design-templates/mobile-app/SKILL.md and read by ahel’s review.

Produce a single mobile-app screen mockup, framed inside a real-feeling iPhone 15 Pro device.

Resource map

mobile-app/
├── SKILL.md                ← you're reading this
├── assets/
│   └── template.html       ← seed: device frame + screen primitives (READ FIRST)
└── references/
    ├── layouts.md          ← 6 screen archetypes (Feed / Detail / Onboarding / Profile / Checkout / Focus)
    └── checklist.md        ← P0/P1/P2 self-review (anti-fake-device)

Workflow

Step 0 — Pre-flight

  1. Read assets/template.html end-to-end through the <style> block. The Dynamic Island, status bar SVG icons, home indicator, side rails, and tab bar are all already drawn in HTML/SVG — do not re-implement them inline on each screen.
  2. Read references/layouts.md so you know which 6 archetypes exist.
  3. Read the active DESIGN.md — map its tokens to the six :root variables in the seed.

Step 1 — Copy the seed

Copy assets/template.html to the project root as index.html. Replace the six :root variables with the active design system's tokens. Replace the page <title> and the caption above the device.

Step 2 — Pick exactly one archetype

Brief languageUse
feed, inbox, timeline, list, messages, notificationsA — Feed
article, post, item, recipe, song, product, song detailB — Detail
sign-up, welcome, intro, walkthrough, tourC — Onboarding
profile, account, user page, someone's bioD — Profile
checkout, payment, order, form, settings stepE — Checkout
timer, map, dashboard widget, single big numberF — Focus / hero card

A mobile screen does one job. If the brief seems to combine two, ship one screen and offer the other as a follow-up.

Step 3 — Paste and fill

Copy the archetype block from layouts.md into <main class="content">, replacing the placeholder card. Fill bracketed text with real, specific copy from the brief. Drop the <nav class="tabbar"> block entirely for archetypes that don't show one (B, C, E).

Step 4 — Self-check

Run through references/checklist.md. Pay extra attention to:

  • Frame still has the Dynamic Island, status bar SVGs, and home indicator
  • Tap targets ≥ 44px
  • One accent, used ≤ 2× on the screen
  • Display headings still use var(--font-display) (serif)

Step 5 — Emit the artifact

<artifact identifier="mobile-slug" type="text/html" title="Mobile — Screen Name">
<!doctype html>
<html>...</html>
</artifact>

One sentence before describing what's there. Stop after </artifact>.

Hard rules

  • The phone is real. Dynamic Island gap, SVG status icons, home indicator. The seed protects all three — don't rewrite the frame.
  • Single screen, single job. No multi-tab tours, no spliced flows.
  • Accent budget = 2. One active tab + one primary action is the default.
  • Numerics in mono via .num class.
  • Display in serif via var(--font-display).
  • No external images — use .ph-img placeholders.

Signals

GitHub stars
99k
Forks
11k
Last commit
Oct 2026

Questions

When should the agent use this skill?
When the brief asks for a "mobile app", "iOS app", "Android app", "phone screen", or "app UI".
How does the agent build a screen?
It copies the seed assets/template.html and pastes one screen archetype from references/layouts.md, then fills it in based on the request.
Which device frame is used?
The screen is rendered inside a pixel-accurate iPhone 15 Pro frame on the page.
What screen layouts are available?
Six screen archetypes, such as a feed, profile, or checkout, listed in references/layouts.md.
Advanced
Item type
skill
Key
mobile-app-2
Source
github.com/nexu-io/open-design