# Expo Examples

Expo's official example projects - the expo/examples repo of ~70 `with-*` integrations...

- Repository: https://github.com/expo/skills (4005 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add expo/skills --skill expo-examples -g -a claude-code -y`
Codex: `npx skills add expo/skills --skill expo-examples -g -a codex -y`
Cursor: `npx skills add expo/skills --skill expo-examples -g -a cursor -y`
Gemini CLI: `npx skills add expo/skills --skill expo-examples -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add expo/skills`

## 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`.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Expo Examples

[expo/examples](https://github.com/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`.

The rest: https://github.com/expo/skills/blob/HEAD/plugins/expo/skills/expo-examples/SKILL.md
