Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

mobile

verified

Use this skill when building mobile applications, React Native apps, Expo projects, iOS/Android development, or cross-platform mobile features. Activates on mentions of React Native, Expo, mobile app, iOS, Android, Swift, Kotlin, Flutter, app store, push notifications, deep linking, mobile navigation, or native modules.

View on GitHub

Marketplace

hyperb1iss

hyperb1iss/hyperskills

Plugin

hyperskills

Repository

hyperb1iss/hyperskills

skills/mobile/SKILL.md

Last Verified

February 1, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/hyperb1iss/hyperskills/blob/main/skills/mobile/SKILL.md -a claude-code --skill mobile

Installation paths:

Claude
.claude/skills/mobile/
Powered by add-skill CLI

Instructions

# Mobile Development

Build native-quality mobile apps with React Native and Expo.

## Quick Reference

### Expo SDK 53+ (2026 Standard)

**New Architecture is DEFAULT** - No opt-in required.

```bash
# Create new project
npx create-expo-app@latest my-app
cd my-app
npx expo start
```

**Key Changes:**

- Hermes engine default (JSC deprecated)
- Fabric renderer + Bridgeless mode
- All `expo-*` packages support New Architecture
- `expo-video` replaces `expo-av` for video
- `expo-audio` replaces `expo-av` for audio

### Project Structure

```
app/
├── (tabs)/           # Tab navigation group
│   ├── index.tsx     # Home tab
│   ├── profile.tsx   # Profile tab
│   └── _layout.tsx   # Tab layout
├── [id].tsx          # Dynamic route
├── _layout.tsx       # Root layout
└── +not-found.tsx    # 404 page
```

### Navigation (Expo Router)

```tsx
// app/_layout.tsx
import { Stack } from "expo-router";

export default function Layout() {
  return (
    <Stack>
      <Stack.Screen name="(tabs)" options={{ headerShown: false }} />
      <Stack.Screen name="modal" options={{ presentation: "modal" }} />
    </Stack>
  );
}
```

**Deep Linking**

```tsx
// Navigate programmatically
import { router } from "expo-router";
router.push("/profile/123");
router.replace("/home");
router.back();
```

### Native Modules (New Architecture)

**Turbo Modules** - Synchronous, type-safe native access:

```tsx
// specs/NativeCalculator.ts
import type { TurboModule } from "react-native";
import { TurboModuleRegistry } from "react-native";

export interface Spec extends TurboModule {
  multiply(a: number, b: number): number;
}

export default TurboModuleRegistry.getEnforcing<Spec>("Calculator");
```

### Styling

**NativeWind (Tailwind for RN)**

```tsx
import { View, Text } from "react-native";

export function Card() {
  return (
    <View className="bg-white rounded-xl p-4 shadow-lg">
      <Text className="text-lg font-bold text-gray-900">Title</Text>
    </View>
  );
}
```

### State Management

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
3810 chars