17 skills · category
Mobile skills for Claude Code
Skills for native and cross-platform apps: React Native with Expo, SwiftUI, Jetpack Compose and Flutter, plus push notifications, universal and app links, offline sync, mobile performance and accessibility, and the mechanics of App Store and Google Play releases.
- 330Android Architecture
- 331App Store Release
- 332Deep Links
- 333Fastlane CI
- 334Flutter Widgets
- 335In-App Purchases
- 336iOS Architecture
- 337iOS Widgets
- 338Jetpack Compose
- 339Kotlin Multiplatform
- 340Mobile Accessibility
- 341Mobile Biometric Auth
- 342Mobile Performance
- 343Mobile Push Notifications
- 344Offline Sync
- 345React Native with Expo
- 346SwiftUI Views
Every mobile skill
Each card opens the full playbook, example prompts and install commands.
Android Architecture
Layers, Hilt and modules that keep Android apps testable
Claude restructures Android apps along the official layered model: ViewModels expose one StateFlow UiState, repositories make Room the source of truth and keep DTOs internal, Hilt binds interfaces through KSP, and long work moves to WorkManager instead of GlobalScope. It splits modules with a strict dependency direction and convention plugins, and backs each layer with fake-based JVM tests.
App Store Release
Signed, reviewed and rolled out without surprises
Claude runs mobile releases like a release manager: CI-signed builds with unambiguous version and build numbers, testers on the exact binary that ships, metadata and privacy disclosures that match every SDK, and reviewer notes with demo credentials. Rollouts are phased with crash and ANR halt thresholds set in advance, and bad releases are halted and fixed forward because neither store can roll back.
Deep Links
One https URL that opens the right screen everywhere
Claude sets up Universal Links and App Links so verified https URLs open the exact screen, with association files served without redirects, exclude rules ordered first, and the Play app signing fingerprint rather than the upload key. One URL parser serves links and push taps, signed-out users return to their target after login, and a bundled script validates both files and Apple's CDN copy.
Fastlane CI
One command from commit to TestFlight and Play
Claude turns laptop releases into reproducible fastlane lanes: Gemfile-pinned fastlane, match certificates fetched read-only behind setup_ci, App Store Connect API keys instead of Apple ID sessions, build numbers derived from the store, and Play uploads that land on internal and promote with a staged rollout. A bundled checker flags committed secrets and risky lanes before CI runs them.
Flutter Widgets
Small const widgets, one state owner, no overflow stripes
Claude writes Flutter UI as small const widget classes instead of helper methods, places state deliberately with setState, Riverpod 3 or Cubit, and fixes layout exceptions from the constraints model rather than by trial and error. Async code checks context.mounted after every await, native calls go through Pigeon, and jank is diagnosed in profile mode with DevTools.
In-App Purchases
Subscriptions that unlock, renew and refund correctly
Claude builds purchase flows where signed store data, not a local flag, decides access. It starts a StoreKit transaction listener at launch, acknowledges Play purchases before the 3-day auto-refund, verifies JWS and purchase tokens on the server, maps App Store Server Notifications v2 and RTDN to one entitlement table, and walks the sandbox matrix of renewals, grace, refunds and upgrades.
iOS Architecture
SwiftUI apps with real boundaries and injected services
Claude gives SwiftUI apps a composition root that wires live dependencies once, feature models that take repository protocols in their initializers, a router per NavigationStack, and persistence hidden behind those protocols. Features move into local Swift package targets that build and preview alone, and Swift Testing suites run against shared fakes under Swift 6 strict concurrency.
iOS Widgets
Fresh widgets and Live Activities without reload spam
Claude builds widgets that render from a snapshot the app writes to a shared App Group, plans timelines around known future dates instead of burning the reload budget, wires taps through App Intents, and gives every declared family a real layout including accented modes. For Live Activities it handles token streams, the 4 KB content-state limit, exact APNs headers, and ending orphaned activities.
Jetpack Compose
Stateless screens, StateFlow state, no recomposition storms
Claude structures Compose screens as a route that collects one immutable UI state with collectAsStateWithLifecycle and a stateless screen that takes state and lambdas. It picks the right effect API with correct keys, applies Scaffold insets for edge-to-edge, and fixes slow lists with keys, deferred state reads and stable models, confirmed with Layout Inspector counts and compiler reports on a release build.
Kotlin Multiplatform
Share the logic, keep the native feel on Android and iOS
Claude decides what belongs in commonMain and what stays native, builds the shared module with the AGP 9 Android-KMP plugin, Ktor and SQLDelight or Room KMP, and designs a Swift-facing facade with @Throws and SKIE so iOS code gets async functions and exhaustive enums. It treats Swift export as Alpha and plans adoption one slice at a time.
Mobile Accessibility
Apps that work with VoiceOver, TalkBack and huge text
Claude audits and fixes native and cross-platform apps so critical flows can be completed eyes-free with VoiceOver and TalkBack. It writes concise labels, exposes roles, values and states, groups cards with custom actions, manages focus after navigation, and makes layouts reflow at the largest text sizes, using a concept-to-API map for SwiftUI, UIKit, Compose, Views, React Native and Flutter.
Mobile Biometric Auth
Face ID that guards a key, not a boolean
Claude implements biometric unlock so the prompt releases a token sealed in the Keychain or Android Keystore, with biometryCurrentSet and setInvalidatedByBiometricEnrollment so a newly added face or finger locks the secret. It maps every cancel, lockout and invalidation error to a password fallback, keeps the server issuing short-lived tokens, and flags wrappers that only return a bypassable true.
Mobile Performance
Faster launches and smooth lists, proven on real devices
Claude treats mobile performance as measurement first: release builds on a mid-range physical device, median and p90 over repeated runs, and a profiler trace before any change. It then applies the fixes that usually matter — deferred SDK init, Baseline Profiles, image downsampling, virtualized lists with stable keys, work moved off the main thread — and adds a benchmark so the gain cannot quietly regress.
Mobile Push Notifications
Delivered, opted-in, and opening the right screen
Claude wires push end to end: per-device tokens stored with their APNs environment, correct apns-push-type and priority headers, FCM HTTP v1 messages with string-only data, and pruning on 410 or UNREGISTERED. It designs a pre-prompt before the system permission dialog, routes taps from foreground, background and cold start, and validates every payload template with a bundled script.
Offline Sync
Local-first writes that never vanish or duplicate
Claude designs offline support per entity instead of bolting a cache onto API calls. Writes commit to the local database together with an outbox entry, a single worker pushes them with idempotency keys and backoff, deltas arrive by server cursor with tombstones, and each entity gets an explicit conflict rule — versioned last-writer-wins, field merges, operations or CRDTs — with failed items surfaced, never dropped.
React Native with Expo
Dev builds, Expo Router and OTA updates that are safe
Claude works in Expo projects the way the toolchain expects: native libraries via npx expo install, native settings through app config and plugins instead of hand-edited ios and android folders, development builds once custom native code appears, and OTA updates only to binaries with a matching runtime version. It checks safe areas, keyboard, back handling and permissions on both platforms.
SwiftUI Views
Clear state ownership and navigation that scales
Claude builds SwiftUI screens with one owner per piece of state, choosing between @State, @Bindable, @Environment and plain properties from a decision table rather than habit. Models are MainActor @Observable classes, loading runs in .task so it cancels when the view leaves, navigation uses typed routes on NavigationStack, and every screen ships with previews for loading, empty, error and large text.
Choosing Mobile skills
Install the skills that match requests you make every week; each costs about 100 tokens of standing context until it loads. If you are not sure where to begin, start with In-App Purchases. For background, read The Best Claude Code Skills in 2026, by Use Case, How to Install Claude Code Skills (5 Ways) and Personal vs Project Skills.
By technology: iOS and Swift skillsAndroid and Kotlin skillsReact skillsFlutter and Dart skillsJava and Kotlin on the JVM skills
Install several
Install several at once
The installer accepts any number of skill names. Add --project to install into the current repository.
curl -fsSL https://claudeskills.page/install.sh | sh -s -- android-architecture app-store-release deep-links fastlane-ci flutter-widgets in-app-purchases ios-architecture ios-widgets jetpack-compose kotlin-multiplatform mobile-accessibility mobile-biometric-auth mobile-performance mobile-push-notifications offline-sync react-native-expo swiftui-views Mobile skills FAQ
How do I install every Mobile skill at once?
Download the bundle at https://claudeskills.page/downloads/category/mobile.zip and unzip it into ~/.claude/skills/ (or .claude/skills/ inside a repository). To pick a few, pass several names to the installer: curl -fsSL https://claudeskills.page/install.sh | sh -s -- android-architecture app-store-release deep-links.
Will installing 17 skills slow Claude Code down?
No. Claude Code keeps only each skill's short description in context — roughly 100 tokens per skill — and loads the full instructions only when a request matches. Install the whole category if it fits your work; unused skills cost almost nothing.
Which Mobile skill should I start with?
Start with In-App Purchases. They cover the most common requests in this category; add the rest as your work calls for them.
Featured in Ship a Mobile App.
Explore other categories
- Claude Code Mastery
- Engineering Workflow
- Frontend
- Backend & APIs
- Languages
- Testing
- DevOps & SRE
- Cloud Platforms
- Databases
- Data Engineering
- AI Engineering
- Security
- Performance
- Architecture
- Design & UX
- Documents & Files
- Technical Writing
- Integrations
- SEO & Growth
- Game Development
- Embedded & IoT
- Product Management
- Research & Analysis
- Automation & Tooling