Official agent skill

Expo Examples

by expo in expo/skills

Expo's official example projects - the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more).

OfficialMITAuto-check: notesMobile

Install Expo Examples

skills CLI
$ npx skills add expo/skills --skill expo-examples -a claude-code

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

GitHub CLI
$ gh skill install expo/skills expo-examples --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/expo/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/expo/skills/expo-examples .claude/skills/expo-examples && 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-examples
GitHub stars
2.7k
Token cost
~1.7k tokens
SKILL.md length
669 words
Files
3 (incl. references)
Skills in repo
26
Repo updated
First seen
Licence
MIT

At a glance

Expo's official example projects - the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more).

  • Works in 2 steps: Find the right example → Adapt into the user's app —…
  • Integrating a third-party library
  • SKILL.md covers Two modes, Workflow, Gotchas and Related skills, plus 2 more sections
  • Calls gh, npx and git; reaches github.com and launch.expo.dev

What it does

Expo Examples is an agent skill from expo/skills, published by the product's own GitHub organization. Expo's official example projects - the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more). Use when integrating a third-party library or service into an existing Expo app and you want the canonical, version-matched pattern to adapt, or when scaffolding a new project from one with npx create-expo --example.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `agents/openai.yaml` and `references/catalog.md`).

It sits in Mobile, covering Cross-platform mobile apps. It works with Expo, Stripe, OpenAI and Supabase. The repository describes itself as: A collection of AI agent skills for working with Expo projects and Expo Application Services. The licence is MIT.

When your agent uses it

  • Integrating a third-party library
  • Service into an existing Expo app and you want the canonical
  • Version-matched pattern to adapt
  • Scaffolding a new project from one with npx create-expo --example

Example prompts

  • “/expo-examples”

Requirements

  • Node.js
  • Pre-approved tools (allowed-tools): Read, Bash(gh api:*), Bash(git clone:*), Bash(npx create-expo:*), Bash(npx degit:*), Bash(bun create:*)

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Find the right example
  2. Adapt into the user's app — non-destructively (critical)

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Bash(gh api:*)
    • Bash(git clone:*)
    • Bash(npx create-expo:*)
    • Bash(npx degit:*)
    • Bash(bun create:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • npx
    • git
    • curl
    • bun

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com
    • launch.expo.dev
    • raw.githubusercontent.com

    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 Examples loads about 1.7k tokens when it runs, and up to ~2.8k if it reads all its reference files. Until then it costs about 102 tokens; SKILL.md has 669 words of instructions outside code blocks.

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

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:46
    ntegration code the manifest revealed → `.env` (required secrets). Per file:
  • NoteMentions a .env fileSKILL.md:79
    *Recreate env vars** from the example's `.env` shape — it holds placeholders, never working secrets.

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from expo/skills at commit d4f4840, republished under its MIT licence (© expo). 669 words, ~1,666 tokens.

Download SKILL.mdSave it as .claude/skills/expo-examples/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
expo-examples
description
Expo's official example projects - the expo/examples repo of ~70 `with-*` integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more). Use when integrating a third-party library or service into an existing Expo app and you want the canonical, version-matched pattern to adapt, or when scaffolding a new project from one with `npx create-expo --example`.
allowed-tools
Read, Bash(gh api:*), Bash(git clone:*), Bash(npx create-expo:*), Bash(npx degit:*), Bash(bun create:*)
version
1.0.0
license
MIT

Expo Examples

expo/examples is Expo's official library of ~70 integration examples — directories named with-<library> (e.g. with-stripe, with-maps), each built around one library or service. These are not full apps: they're managed projects (no ios//android/ dirs — native setup is via config plugins), and the typical one is a single screen of ~100–200 lines. Mine them for the canonical integration pattern — the dependency set, app.json config plugins, and minimal wiring Expo maintains against the current SDK — and adapt that into the user's app. Don't expect to lift an application architecture from them.

Reach for an example before hand-rolling an integration. (Kinds — full-stack, showcases, starters — are noted in ./references/catalog.md.)

Two modes

  1. Inspiration / adapt (most common) — the user already has a project. Find the matching example, read its key files, and apply the pattern to their code.
  2. Scaffold — greenfield. Start a fresh project directly from the example.

Workflow

1. Find the right example

Map the user's need to an example name (e.g. payments → with-stripe, auth → with-clerk). ./references/catalog.md is a categorized snapshot for fast triage — but it drifts, so confirm against the live list:

bash
# Live example names:
gh api repos/expo/examples/contents --jq '.[] | select(.type=="dir" and (.name|startswith(".")|not)) | .name'
# Aliases (renamed) + deprecated (dead/moved) examples — check before recommending:
gh api repos/expo/examples/contents/meta.json --jq '.content' | base64 -d

meta.json is the source of truth for what's renamed or dead (deprecated examples are removed from the repo tree but still listed here, each with a message). If an example is in its deprecated map, don't recommend it — follow the message to the modern path. If it's in aliases, use the destination.

2a. Inspiration mode — study without touching the user's project

The common case: the user already has an app and wants to see how Expo does something. Read the example as reference and apply the patterns by hand — never scaffold an example on top of their project.

First, list the whole example in one call. Integration code is often nested (e.g. Stripe's server routes live in app/api/), so a one-level listing misses the important files:

bash
gh api 'repos/expo/examples/git/trees/master?recursive=1' \
  --jq '.tree[].path | select(startswith("with-stripe/"))'

Then read the high-signal files first: README.md (setup) → package.json (deps) → app.json (config plugins / permissions) → the integration code the manifest revealed → .env (required secrets). Per file:

bash
gh api repos/expo/examples/contents/with-stripe/utils/stripe-server.ts --jq '.content' | base64 -d
# No gh? Raw URL (branch is master):
curl -s https://raw.githubusercontent.com/expo/examples/master/with-stripe/utils/stripe-server.ts

Reading more than a couple of files? Many integrations are spread across server routes, a client provider, and config (Stripe is). Skip the per-file calls — pull the whole example into a throwaway/gitignored dir (not the user's project) and read it freely with Grep/Read, then apply by hand:

bash
npx degit expo/examples/with-stripe /tmp/expo-ref/with-stripe   # clean copy, no git history
# fallback without degit (sparse-checkout, no full ~64 MB clone):
git clone --depth 1 --filter=blob:none --sparse https://github.com/expo/examples.git /tmp/expo-ref/examples \
  && (cd /tmp/expo-ref/examples && git sparse-checkout set with-stripe)

Read from there with Grep/Read; delete the scratch dir when done.

2b. Scaffold mode — new project from an example
bash
npx create-expo --example with-stripe   # short form:  npx create-expo -e with-stripe
bun create expo --example with-stripe    # with bun
Show full SKILL.md (271 more words)Show less
3. Adapt into the user's app — non-destructively (critical)

When the user already has an app, add only what the example introduces; never overwrite their setup.

  • Version-align — don't copy pinned versions. Examples track the latest SDK, so their package.json pins won't match an older project. Add only the missing deps with npx expo install <pkg> (it resolves SDK-correct versions) instead of copying exact versions.
  • Merge config, don't replace it. Add only the app.json/app.config.* plugins and permissions the example introduces that the user lacks — keep their existing config block intact.
  • Port the integration code.
  • Recreate env vars from the example's .env shape — it holds placeholders, never working secrets.

Done when the integration code is ported and every dependency, config plugin, permission, and env var it needs is accounted for in the user's app — not when it merely looks wired up.

Gotchas

  • Default branch is master, not main (matters for raw URLs and sparse checkout).
  • Single-click deploy. Every example has a launch URL: https://launch.expo.dev/?github=https://github.com/expo/examples/tree/master/<example>.
  • Native UI components (@expo/ui package) → expo-ui
  • Styling and native-feeling screens → expo-native-ui
  • Navigation and routing → expo-router
  • Authoring a native module → expo-module
  • Upgrade the SDK before adopting a latest-SDK example → expo-upgrade

References

  • ./references/catalog.md — categorized snapshot of the example library for fast triage.

Submitting Feedback

If you encounter errors, misleading or outdated information in this skill, report it so Expo can improve:

bash
npx --yes submit-expo-feedback@latest --category skills --subject "expo-examples" "<actionable feedback>"

Only submit when you have something specific and actionable to report. Include as much relevant context as possible. If an AI agent repeatedly failed or the user had to take over an Expo task, load the expo-skill-feedback skill and follow its eval-candidate flow instead of reusing the command above.

© expo, 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 2 other files (references) in plugins/expo/skills/expo-examples of expo/skills.

  • SKILL.md
  • agents/openai.yaml
  • references/catalog.md

Open the folder on GitHubat commit d4f4840

Compare with similar skills

Expo Examples 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 Examples compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Expo Examples this skillexpo/skills2.7k—~1.7kAutomated safety check: NotesMIT
Expo Examplessickn33/agentic-awesome-skills47k1 repos~1.7kAutomated safety check: NotesMIT
Find Skillsrohitg00/skillkit1.5k—~1.2kAutomated safety check: PassApache-2.0
App IconCode-with-Beto/skills140—~2.4kAutomated safety check: PassNone
Toolifycoreyhaines31/makerskills850—~2.9kAutomated safety check: NotesMIT
Credentialsalinaqi/maggy707—~2.4kAutomated safety check: NotesMIT

Similar skills

  • Expo Examples

    sickn33/agentic-awesome-skills

    Expo's official example projects — the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more).

    47k GitHub starsUsed in 1 repo~1.7k tokens
    MobileAuto-check: notes
  • Find Skills

    rohitg00/skillkit

    Discovers, searches, and installs skills from multiple AI agent skill marketplaces (400K+ skills) using the SkillKit CLI.

    1.5k GitHub stars~1.2k tokensUpdated 4 mo ago
    MobileAuto-check passed
  • App Icon

    Code-with-Beto/skills

    Generate app icons for your React Native Expo app with iOS 26 support

    140 GitHub stars~2.4k tokensUpdated 2 mo ago
    MobileAuto-check passed
  • Toolify

    coreyhaines31/makerskills

    When you want to integrate an external tool, API, MCP server, or service into a project — the wizard walks you through auth, config, env vars, client wrapper code, example usage, and an optional…

    850 GitHub stars~2.9k tokensUpdated today
    Agent WorkflowsAuto-check: notes
  • Credentials

    alinaqi/maggy

    Centralized API key management from Access.txt. An agent skill from alinaqi/maggy.

    707 GitHub stars~2.4k tokensUpdated 14 days ago
    SecurityAuto-check: notes
  • React Native Best Practices

    vercel-labs/openreview

    Official

    A prioritized rule set for React Native and Expo apps covering list performance, animation, navigation, UI patterns, state, rendering, monorepos and configuration.

    1.7k GitHub starsUsed in 17 repos~1.1k tokens
    MobileAuto-check passed

More from expo/skills

All 26 skills in this repo
  • Official

    Check the health of published EAS Update: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per channel.

    2.7k GitHub starsUsed in 4 repos~3.1k tokens
    Auto-check passed
  • Eas Workflows

    expo/skills

    Official

    Helps understand and write EAS workflow YAML files for Expo projects.

    2.7k GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Expo App Clip

    expo/skills

    Official

    Add an iOS App Clip target to an Expo app. An agent skill from expo/skills.

    2.7k GitHub starsUsed in 2 repos~2.4k tokens
    Auto-check passed
  • Expo Skill Eval

    expo/skills

    Official

    Evaluate Expo skills in this repo end-to-end - trigger accuracy, generated code quality, and runtime screenshots on iOS simulator and Android emulator via Expo Go (web optional).

    2.7k GitHub stars~12k tokensUpdated yesterday
    Auto-check passed
  • Official

    Submit feedback on an Expo skill—or Expo itself—and control bundled anonymous usage telemetry (off by default / opt-in).

    2.7k GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Expo Module

    expo/skills

    Official

    Guide for creating and writing Expo native modules and views using the Expo Modules API (Swift, Kotlin, TypeScript).

    2.7k GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Categories

Questions about Expo Examples

What does Expo Examples do?

Expo's official example projects - the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more). Expo Examples is an agent skill from expo/skills, published by the product's own GitHub organization. Expo's official example projects - the expo/examples repo of ~70 with- integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more).

When should I use Expo Examples?

Expo Examples fits situations like: integrating a third-party library; service into an existing Expo app and you want the canonical; version-matched pattern to adapt; scaffolding a new project from one with npx create-expo --example.

How do I install Expo Examples in Claude Code?

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

How do I install Expo Examples in Codex?

Run `npx skills add expo/skills --skill expo-examples -a codex`. Or copy the skill folder (plugins/expo/skills/expo-examples in expo/skills) into .agents/skills/expo-examples in your project. Codex loads it when a task matches its description.

Can I use Expo Examples 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 expo/skills --skill expo-examples -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-examples, .gemini/skills/expo-examples, .github/skills/expo-examples and .opencode/skills/expo-examples in your project.

What does Expo Examples need to run?

Going by SKILL.md and its folder, Expo Examples needs the command-line tools its instructions call (gh, npx, git, curl and bun). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Bash(gh api:*), Bash(git clone:*), Bash(npx create-expo:*), Bash(npx degit:*), Bash(bun create:*).

Does Expo Examples access the network?

SKILL.md names 3 domains. In commands or code: github.com, launch.expo.dev and raw.githubusercontent.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Expo Examples safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Expo Examples use?

Expo Examples is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Expo Examples use?

About 1.7k tokens (SKILL.md is roughly 6.7k 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 1.1k tokens, read only when the agent opens those files.

What are the alternatives to Expo Examples?

Skills that share tags, products or a category with Expo Examples: Expo Examples (sickn33/agentic-awesome-skills, 47k stars), Find Skills (rohitg00/skillkit, 1.5k stars), App Icon (Code-with-Beto/skills, 140 stars) and Toolify (coreyhaines31/makerskills, 850 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Expo Examples?

expo (a GitHub organization, an official publisher) maintains it in expo/skills, which has 2,685 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 7, 2026.

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