/ Каталог / Песочница / skills
● Сообщество zaferayan ⚡ Сразу

skills

автор zaferayan · zaferayan/skills

Expo + React Native skill for Claude Code — scaffolds screens, wires navigation, and respects the Expo way instead of reinventing it.

An Expo-flavored skill for Claude Code. Teaches Claude to build mobile apps the Expo way: expo-router for navigation, proper EAS config, Expo SDK modules over random npm packages. Avoids the common trap of LLMs suggesting outdated RN-CLI patterns.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

skills-skill-7.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "skills-skill-7": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zaferayan/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "skills-skill-7": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zaferayan/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "skills-skill-7": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zaferayan/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "skills-skill-7": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zaferayan/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "skills-skill-7",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/zaferayan/skills",
        "~/.claude/skills/skills"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "skills-skill-7": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/zaferayan/skills",
          "~/.claude/skills/skills"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add skills-skill-7 -- git clone https://github.com/zaferayan/skills ~/.claude/skills/skills

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: skills

Spin up a new Expo app with tabs and auth in one session

👤 Devs starting a new mobile app who want the boring parts done ⏱ ~45 min beginner

Когда использовать: Day zero of a new project — you want tabs, stack, and a sign-in flow without reading three blog posts.

Предварительные требования
  • Node 20+, Xcode or Android Studio — Standard Expo requirements
  • Skill installed — git clone https://github.com/zaferayan/skills ~/.claude/skills/skills
Поток
  1. Create the app
    Use the Expo skill. Start a new app 'TaskFlow' with expo-router, TypeScript, and the tabs template. Include a login screen with email/password.✓ Скопировано
    → npx create-expo-app run, then file structure with app/(tabs)/ and app/(auth)/
  2. Add state
    Wire up Zustand for the auth store and persist to SecureStore.✓ Скопировано
    → stores/auth.ts with zustand + persist middleware using expo-secure-store
  3. Test on device
    Start the dev server and give me the QR code to scan.✓ Скопировано
    → npx expo start output

Итог: A running app on your phone with tabs, auth, and persistence in under an hour.

Подводные камни
  • Claude suggests react-native-cli patterns — Explicitly say 'Expo SDK, expo-router only' in prompts
Сочетать с: filesystem

Configure EAS Build for iOS and Android

👤 Teams ready to ship TestFlight / Play internal ⏱ ~30 min intermediate

Когда использовать: First time submitting to TestFlight/Play.

Поток
  1. Generate eas.json
    Use the Expo skill. Generate eas.json with preview (internal) and production profiles, correct bundle identifier patterns, and env var injection.✓ Скопировано
    → Valid eas.json with both profiles
  2. Wire secrets
    Add my Sentry DSN and API base URL as EAS secrets for preview and production separately.✓ Скопировано
    → eas secret:create commands listed
  3. Trigger the build
    Now trigger a preview build for iOS.✓ Скопировано
    → eas build --profile preview --platform ios command

Итог: EAS builds running, secrets managed.

Подводные камни
  • Committing app.json with secrets inline — Secrets go in EAS env, not app.json; let Claude use expo-constants to read them

Integrate a native module using Expo config plugins

👤 Devs adding functionality that requires native code (camera, biometrics, push) ⏱ ~20 min intermediate

Когда использовать: You need functionality beyond JS, but don't want to eject.

Поток
  1. Identify the right package
    Use the Expo skill. I need biometric auth. What's the right Expo SDK module and how do I configure it?✓ Скопировано
    → expo-local-authentication named with config plugin entries
  2. Wire config plugin
    Add the config plugin entries and required iOS usage strings.✓ Скопировано
    → app.json diff with plugins array and NSFaceIDUsageDescription

Итог: Native module integrated via managed workflow.

Подводные камни
  • Adding raw native code and breaking managed workflow — Prefer Expo SDK modules and config plugins; eject only if truly needed

Комбинации

Сочетайте с другими MCP — эффект x10

skills-skill-7 + filesystem

Bulk-apply Expo idioms across an existing RN project

Migrate my RN-CLI app to Expo managed workflow; point at the source tree.✓ Скопировано
skills-skill-7 + git

Commit each step separately so EAS setup changes are auditable

Commit the EAS config changes as a distinct commit before adding secrets.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
expo_scaffold app name, template, features Starting a new app 0
eas_config profiles needed Setting up builds 0
config_plugin_wire native module name Adding native features 0

Стоимость и лимиты

Во что обходится

Квота API
None built-in
Токенов на вызов
Moderate
Деньги
Expo is free; EAS Build has a free tier with paid scaling
Совет
Use EAS local builds during dev; cloud builds only for preview/prod.

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: No direct creds; EAS secrets are managed by Expo
Исходящий трафик: None from skill itself

Устранение неполадок

Частые ошибки и исправления

Metro can't find module after install

Run npx expo install rather than npm install so SDK-compatible versions are picked

Проверить: npx expo-doctor
Build fails with 'unrecognized bundle identifier'

Bundle ID mismatch between app.json and Apple Developer portal; align them

Native module not found at runtime

Config plugin didn't run; rebuild with eas build or npx expo prebuild --clean

Альтернативы

skills в сравнении

АльтернативаКогда использоватьКомпромисс
React Native CLIYou need maximum native control and don't mind managing Xcode/GradleMuch more setup burden
FlutterCross-platform with DartDifferent language, different ecosystem

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills