Agent skill

Expo iOS Hig Verify

by pproenca in pproenca/dot-skills

Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex…

MITAuto-check passedMobile

Install Expo iOS Hig Verify

skills CLI
$ npx skills add pproenca/dot-skills --skill expo-ios-hig-verify -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pproenca/dot-skills expo-ios-hig-verify --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pproenca/dot-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.experimental/expo-ios-hig-verify .claude/skills/expo-ios-hig-verify && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
expo-ios-hig-verify
GitHub stars
215
Token cost
~1.1k tokens
SKILL.md length
379 words
Files
6 (incl. scripts, references)
Skills in repo
41
Repo updated
First seen
Licence
MIT

At a glance

Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex…

  • Works in 4 steps: Run scripts/verify-hig.sh against the… → Read the grouped report; open the linked… → Treat ERRORS as must-fix before… → …
  • The user asks to check
  • SKILL.md covers When to Apply, Workflow Overview, Checks and Setup, plus 2 more sections
  • Runs Shell scripts from its folder; calls bash

What it does

Expo iOS Hig Verify is an agent skill from pproenca/dot-skills. Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex colors, unvirtualized lists — reports each violation with file:line and a link to the rule. Trigger when the user asks to check, lint, audit, or review an Expo iOS app for HIG compliance or "native feel," or before shipping/merging Expo iOS UI. Pairs with the expo-ios-hig rules skill (it checks what that skill teaches) and…

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `config.json`, `gotchas.md` and `metadata.json`).

It sits in Mobile, covering Cross-platform mobile apps and iOS development. It works with iOS, Expo and React Native. The repository describes itself as: A collection of AI agent skills following the Agent Skills open format. The licence is MIT.

When your agent uses it

  • The user asks to check
  • Review an Expo iOS app for HIG compliance
  • Before shipping/merging Expo iOS UI

Example prompts

  • “native feel,”
  • “/expo-ios-hig-verify”

Requirements

  • A Bash shell

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Run scripts/verify-hig.sh against the Expo project root.
  2. Read the grouped report; open the linked rule file for any finding to see the fix.
  3. Treat ERRORS as must-fix before shipping; review ADVISORIES (they include intentional exceptions).
  4. To extend: add a check ERROR|ADVISORY "" "" line in run_checks() — see references/workflow.md.

What it can do on your machine

Read from SKILL.md and the folder at commit cf93c57. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Expo iOS Hig Verify loads about 1.1k tokens when it runs, and up to ~1.9k if it reads all its reference files. Until then it costs about 142 tokens; SKILL.md has 379 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~142
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from pproenca/dot-skills at commit cf93c57, republished under its MIT licence (© pproenca). 379 words, ~1,119 tokens.

Download SKILL.mdSave it as .claude/skills/expo-ios-hig-verify/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
expo-ios-hig-verify
description
Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex colors, unvirtualized lists — reports each violation with file:line and a link to the rule. Trigger when the user asks to check, lint, audit, or review an Expo iOS app for HIG compliance or "native feel," or before shipping/merging Expo iOS UI. Pairs with the expo-ios-hig rules skill (it checks what that skill teaches) and the expo-ios-screen-scaffolder.

Expo iOS HIG Verifier

A read-only static checker that scans an Expo (React Native) project for violations of the expo-ios-hig rules and reports them grouped by severity, with file:line locations and links to the rule that explains the fix. It is the automated counterpart to the expo-ios-hig reference skill: that skill teaches the rules; this one checks them.

When to Apply

Run this skill when:

  • The user asks to check, lint, audit, or review an Expo app for HIG compliance or native feel
  • Before merging or shipping Expo iOS UI changes, as a quality gate
  • After scaffolding new screens, to confirm they stay native
  • Investigating why an Expo app "feels like a web wrapper" or "feels like Android"

It is read-only — it never modifies the target project, so it is safe to run unsupervised.

Workflow Overview

verify-hig.sh [project-dir]
  1. Resolve search roots (app/ src/ components/ by default, or config.json)
  2. Run static checks — one per detectable expo-ios-hig rule (rg, or grep fallback)
  3. Aggregate findings: severity, rule, message, file:line
  4. Print grouped report (ERRORS then ADVISORIES) with a link to each rule
  5. Exit 0 if clean, 1 if any ERROR (with --strict, advisories fail too)

Run it:

bash
bash scripts/verify-hig.sh /path/to/expo-app          # text report
bash scripts/verify-hig.sh /path/to/expo-app --strict # advisories also fail
bash scripts/verify-hig.sh /path/to/expo-app --json   # machine-readable

Checks

ERRORS are high-precision (import and literal-flag matches, low false positives). ADVISORIES are heuristics that warrant a look but don't fail the run unless --strict.

SeverityRuleDetects
ERRORnative-avoid-material-uireact-native-paper, @react-native-material/*, @rneui/*, react-native-elements imports
ERRORnav-native-stack@react-navigation/stack / createStackNavigator
ERRORtouch-gesture-handler-threadPanResponder
ERRORtouch-pressable-feedbackTouchableWithoutFeedback
ERRORacc-dynamic-typeallowFontScaling={false}
ERRORmotion-ui-thread-animationuseNativeDriver: false
ADVISORYnav-native-tabscreateBottomTabNavigator (JS tab bar)
ADVISORYvisual-semantic-colorshardcoded hex in color:/backgroundColor:/borderColor:/tintColor:
ADVISORYvisual-system-fontcustom fontFamily:
ADVISORYsystem-status-barhardcoded StatusBar style="dark"/"light"
ADVISORYmotion-virtualized-listsa file using both <ScrollView> and .map(

Each finding links to expo-ios-hig/references/{rule}.md (path configurable in config.json) for the explanation and fix.

Show full SKILL.md (145 more words)Show less

Setup

config.json is optional — sensible defaults apply. Override on first use if your project differs:

  • search_roots — space-separated source dirs to scan (default app src components)
  • skill_rules_dir — path used in report links to the expo-ios-hig rule files (default ../expo-ios-hig/references)

If jq is installed, the script reads these from config.json; otherwise it uses the defaults. rg (ripgrep) is used when available, with a grep fallback — no hard dependency.

How to Use

  1. Run scripts/verify-hig.sh against the Expo project root.
  2. Read the grouped report; open the linked rule file for any finding to see the fix.
  3. Treat ERRORS as must-fix before shipping; review ADVISORIES (they include intentional exceptions).
  4. To extend: add a check ERROR|ADVISORY <rule> "<message>" "<regex>" line in run_checks() — see references/workflow.md.
  • expo-ios-hig — the rules this verifier checks; every finding links back to it.
  • expo-ios-screen-scaffolder — generates screens that pass these checks by construction.

© pproenca, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (scripts, references) in skills/.experimental/expo-ios-hig-verify of pproenca/dot-skills.

  • SKILL.md
  • config.json
  • gotchas.md
  • metadata.json
  • references/workflow.md
  • scripts/verify-hig.sh

Open the folder on GitHubat commit cf93c57

Compare with similar skills

Expo iOS Hig Verify next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Expo iOS Hig Verify compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Expo iOS Hig Verify this skillpproenca/dot-skills215—~1.1kAutomated safety check: PassMIT
Expo Brownfield Integrationmweinbach/agent-coworker1562 repos~900Automated safety check: NotesCustom licence
Expo UIarcboxlabs/linkcode155—~1.2kAutomated safety check: PassMIT
React Native Healthkit Contributingkingstinct/react-native-healthkit716—~1.3kAutomated safety check: PassMIT
Web To Mobilesuntay44/web-to-mobile-magic-plugin107—~781Automated safety check: PassMIT
Mobile Devcallstackincubator/codex-mobile-dev-plugin152—~5.5kAutomated safety check: PassNone

Similar skills

  • Expo Brownfield Integration

    mweinbach/agent-coworker

    Helps add Expo and React Native to an existing native iOS or Android app, and choose between a prebuilt AAR or XCFramework and a fully integrated build.

    156 GitHub starsUsed in 2 repos~900 tokens
    MobileAuto-check: notes
  • Expo UI

    arcboxlabs/linkcode

    Framework (OSS). An agent skill from arcboxlabs/linkcode.

    155 GitHub stars~1.2k tokensUpdated 13 days ago
    MobileAuto-check passed
  • React Native Healthkit Contributing

    kingstinct/react-native-healthkit

    How to change the react-native-healthkit monorepo itself (packages/core, packages/react-native-healthkit, packages/health-records, apps/example).

    716 GitHub stars~1.3k tokensUpdated yesterday
    MobileAuto-check passed
  • Web To Mobile

    suntay44/web-to-mobile-magic-plugin

    Orchestrate website or web app conversion into a mobile app.

    107 GitHub stars~781 tokensUpdated 27 days ago
    MobileAuto-check passed
  • Mobile Dev

    callstackincubator/codex-mobile-dev-plugin

    Official

    A skill your agent uses when building, running, changing, or debugging local iOS, Android, Expo, React Native, or SwiftUI apps.

    152 GitHub stars~5.5k tokensUpdated yesterday
    MobileAuto-check passed
  • Iphone Duo React Native

    mirzaaghazadeh/iphone-duo-skills

    Adapt a React Native or Expo app to iPhone Duo, Apple's first foldable iPhone — asymmetric safe area insets, resize handling, and how to expose the iOS 27.1 reserved-region and hinge APIs through a…

    149 GitHub stars~1.5k tokensUpdated 4 days ago
    MobileAuto-check passed

More from pproenca/dot-skills

All 41 skills in this repo
  • Audio Voice Recovery

    pproenca/dot-skills

    Audio forensics and voice recovery guidelines for CSI-level audio analysis.

    215 GitHub stars~3.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Codemod React Pipeline

    pproenca/dot-skills

    Guided, scripted pipeline for running JSX/TSX/React codemods safely across large legacy codebases.

    215 GitHub stars~1.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Dev Rfc

    pproenca/dot-skills

    Create well-structured RFCs and technical proposals for software projects.

    215 GitHub stars~3.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Dx Harness

    pproenca/dot-skills

    Developer-experience friction auditing and fixing — slow onboarding, repeated manual setup steps, missing bootstrap/reset/seed scripts, undiscoverable conventions.

    215 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Language Spec Author

    pproenca/dot-skills

    Turn a rough idea for a language into a complete, implementable specification — a DSL, query, config/data, template, or protocol language — by interviewing the author dimension by dimension until…

    215 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Python Pep Author

    pproenca/dot-skills

    Drafting Python Enhancement Proposals (PEPs) — proposing a Python language feature, a standard library change, an interoperability standard, or an informational/process document for the Python…

    215 GitHub stars~2.1k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Expo iOS Hig Verify

What does Expo iOS Hig Verify do?

Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex…. Expo iOS Hig Verify is an agent skill from pproenca/dot-skills. Static scan of an Expo / React Native iOS app for non-native patterns — Material component kits, JS navigators instead of native stack/tabs, PanResponder, disabled font scaling, hardcoded hex colors, unvirtualized lists — reports each violation with file:line and a link to the rule.

When should I use Expo iOS Hig Verify?

Expo iOS Hig Verify fits situations like: the user asks to check; review an Expo iOS app for HIG compliance; before shipping/merging Expo iOS UI.

How do I install Expo iOS Hig Verify in Claude Code?

Run `npx skills add pproenca/dot-skills --skill expo-ios-hig-verify -a claude-code`. Or copy the skill folder (skills/.experimental/expo-ios-hig-verify in pproenca/dot-skills) into .claude/skills/expo-ios-hig-verify in your project. Claude Code loads it when a task matches its description.

How do I install Expo iOS Hig Verify in Codex?

Run `npx skills add pproenca/dot-skills --skill expo-ios-hig-verify -a codex`. Or copy the skill folder (skills/.experimental/expo-ios-hig-verify in pproenca/dot-skills) into .agents/skills/expo-ios-hig-verify in your project. Codex loads it when a task matches its description.

Can I use Expo iOS Hig Verify in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pproenca/dot-skills --skill expo-ios-hig-verify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/expo-ios-hig-verify, .gemini/skills/expo-ios-hig-verify, .github/skills/expo-ios-hig-verify and .opencode/skills/expo-ios-hig-verify in your project.

What does Expo iOS Hig Verify need to run?

Going by SKILL.md and its folder, Expo iOS Hig Verify needs a shell for the scripts in its folder and the command-line tools its instructions call (bash). Our summary lists: A Bash shell.

Does Expo iOS Hig Verify access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Expo iOS Hig Verify safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Expo iOS Hig Verify use?

Expo iOS Hig Verify is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Expo iOS Hig Verify use?

About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 820 tokens, read only when the agent opens those files.

What are the alternatives to Expo iOS Hig Verify?

Skills that share tags, products or a category with Expo iOS Hig Verify: Expo Brownfield Integration (mweinbach/agent-coworker, 156 stars), Expo UI (arcboxlabs/linkcode, 155 stars), React Native Healthkit Contributing (kingstinct/react-native-healthkit, 716 stars) and Web To Mobile (suntay44/web-to-mobile-magic-plugin, 107 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Expo iOS Hig Verify?

pproenca (a GitHub user) maintains it in pproenca/dot-skills, which has 215 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on August 15, 2026.

Source: pproenca/dot-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.