mobile-guide
Comprehensive mobile development guide for iOS, Android, React Native, and Flutter. Includes Swift, Kotlin, and cross-platform frameworks. Use when building mobile applications, iOS, Android, or cross-platform apps.
Best use case
mobile-guide is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Comprehensive mobile development guide for iOS, Android, React Native, and Flutter. Includes Swift, Kotlin, and cross-platform frameworks. Use when building mobile applications, iOS, Android, or cross-platform apps.
Teams using mobile-guide should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/mobile-guide/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How mobile-guide Compares
| Feature / Agent | mobile-guide | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Comprehensive mobile development guide for iOS, Android, React Native, and Flutter. Includes Swift, Kotlin, and cross-platform frameworks. Use when building mobile applications, iOS, Android, or cross-platform apps.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Mobile Development Guide
Master native and cross-platform mobile development for iOS and Android platforms.
## Quick Start
### iOS with Swift
```swift
import SwiftUI
struct ContentView: View {
@State private var todos: [String] = []
@State private var newTodo = ""
var body: some View {
VStack {
TextField("Add todo", text: $newTodo)
Button("Add") {
todos.append(newTodo)
newTodo = ""
}
List {
ForEach(todos, id: \.self) { todo in
Text(todo)
}
}
}
}
}
```
### Android with Kotlin
```kotlin
import androidx.compose.material3.Button
import androidx.compose.material3.TextField
import androidx.compose.runtime.mutableStateOf
@Composable
fun TodoApp() {
var todos by remember { mutableStateOf(listOf<String>()) }
var newTodo by remember { mutableStateOf("") }
Column {
TextField(
value = newTodo,
onValueChange = { newTodo = it },
label = { Text("Add todo") }
)
Button(onClick = {
todos = todos + newTodo
newTodo = ""
}) {
Text("Add")
}
LazyColumn {
items(todos) { todo ->
Text(todo)
}
}
}
}
```
### React Native
```javascript
import React, { useState } from 'react';
import { View, TextInput, TouchableOpacity, FlatList, Text } from 'react-native';
export default function TodoApp() {
const [todos, setTodos] = useState([]);
const [input, setInput] = useState('');
const addTodo = () => {
setTodos([...todos, input]);
setInput('');
};
return (
<View>
<TextInput
placeholder="Add todo"
value={input}
onChangeText={setInput}
/>
<TouchableOpacity onPress={addTodo}>
<Text>Add</Text>
</TouchableOpacity>
<FlatList
data={todos}
renderItem={({ item }) => <Text>{item}</Text>}
/>
</View>
);
}
```
### Flutter
```dart
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class TodoApp extends StatefulWidget {
const TodoApp({Key? key}) : super(key: key);
@override
State<TodoApp> createState() => _TodoAppState();
}
class _TodoAppState extends State<TodoApp> {
List<String> todos = [];
TextEditingController controller = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: [
TextField(controller: controller),
ElevatedButton(
onPressed: () {
setState(() => todos.add(controller.text));
controller.clear();
},
child: const Text('Add'),
),
Expanded(
child: ListView.builder(
itemCount: todos.length,
itemBuilder: (context, index) => Text(todos[index]),
),
),
],
),
);
}
}
```
## iOS Development Path
### Swift Basics
- **Variables & Types**: var, let, type safety
- **Functions**: Parameters, return types, closures
- **Structs & Classes**: Value vs reference types
- **Error Handling**: try/catch, Result type
- **Concurrency**: async/await, actors
### UI Frameworks
- **SwiftUI**: Modern declarative UI (recommended)
- Views, state management, modifiers
- Navigation, animation, gestures
- Data binding with @State, @ObservedObject
- **UIKit**: Older imperative framework
- View controllers, navigation stack
- Delegates and data sources
- Auto Layout constraints
### iOS Architecture
- **MVC**: Model-View-Controller
- **MVVM**: Model-View-ViewModel with observable
- **CLEAN**: Entity, Use Case, Interface
- **Coordinator Pattern**: Navigation management
### Key Frameworks
- **Foundation**: Core utilities and data types
- **CoreData**: Local persistence
- **Networking**: URLSession for API calls
- **CoreLocation**: Location services
- **AVFoundation**: Camera and media
## Android Development Path
### Kotlin Basics
- **Variables & Functions**: val, var, fun
- **Classes & Objects**: Data classes, sealed classes
- **Extension Functions**: Adding methods to types
- **Coroutines**: async/await equivalent
- **Flow**: Reactive streams
### UI Frameworks
- **Jetpack Compose**: Modern declarative UI (recommended)
- Composables, state hoisting
- Layouts and modifiers
- Navigation, animation
- **XML Layouts**: Traditional approach
- Activity, Fragment architecture
- View binding, data binding
### Android Architecture
- **MVC**: Model-View-Controller
- **MVVM**: ViewModel, LiveData, Data Binding
- **CLEAN**: Separation of concerns
- **Repository Pattern**: Data abstraction
### Key Libraries
- **Jetpack Components**: Room, Lifecycle, ViewModel
- **Retrofit**: HTTP client
- **Hilt**: Dependency injection
- **Firebase**: Analytics, push notifications
## Cross-Platform: React Native
### Setup & Development
- **Expo**: Managed development environment
- **React Native CLI**: Full control
- **Navigation**: React Navigation
- **State Management**: Redux, Context API
### Advantages & Tradeoffs
- **Pros**: Code sharing, JavaScript ecosystem
- **Cons**: Performance, native feel, tooling maturity
### Best Practices
- Platform-specific code separation
- Native module development
- Performance optimization
- Bridge communication with native
## Cross-Platform: Flutter
### Setup & Development
- **Dart Language**: Flutter's language
- **Widget Tree**: UI composition
- **State Management**: Provider, Riverpod, Bloc
- **Navigation**: Named routes, deep linking
### Advantages
- **Performance**: Compiled to native
- **Hot Reload**: Fast development
- **Beautiful UI**: Rich widget library
- **Single Codebase**: iOS and Android
### Ecosystem
- **Pub.dev**: Package registry
- **Popular Packages**: http, provider, get
- **Plugins**: Native functionality access
- **Firebase Integration**: Easy setup
## Mobile Development Essentials
### Networking
- **REST APIs**: JSON parsing, error handling
- **GraphQL**: Mobile query language
- **Offline Sync**: Local storage, sync strategies
- **SSL Pinning**: Security
### Local Data
- **SQLite**: Structured data
- **Key-Value Storage**: SharedPreferences, UserDefaults
- **File System**: Documents, cache directories
### Authentication
- **OAuth 2.0**: Third-party login
- **JWT**: Token-based auth
- **Biometric**: Face ID, fingerprint
- **Session Management**: Token refresh
### Testing
- **Unit Tests**: Business logic
- **Widget/Component Tests**: UI testing
- **Integration Tests**: Full app flows
- **UI Automation**: End-to-end testing
## Deployment
### iOS
1. Apple Developer Account registration
2. Create certificates and identifiers
3. Build and archive app
4. Submit to App Store
5. Review and approval (1-3 days)
### Android
1. Google Play Account registration
2. Create signing certificate
3. Build release APK/AAB
4. Upload to Google Play
5. Testing and release (instant)
### Publishing Best Practices
- App Store Optimization (ASO)
- Beta testing programs
- Update strategy
- Versioning and release notes
## Projects
1. **Todo App** - Basic CRUD, storage
2. **Weather App** - API integration, UI
3. **Chat Application** - Real-time, networking
4. **E-commerce App** - Complex UI, payments
5. **Fitness Tracker** - Sensors, data analysis
## Resources
### Learning Platforms
- **Udemy**: Framework-specific courses
- **Pluralsight**: In-depth iOS/Android paths
- **Google Codelabs**: Official Android tutorials
- **Apple Developer**: Official iOS resources
### Documentation
- [Swift.org](https://swift.org/)
- [Android Developers](https://developer.android.com/)
- [React Native](https://reactnative.dev/)
- [Flutter](https://flutter.dev/)
### Communities
- **Stack Overflow**: Question and answers
- **Reddit**: r/iOSProgramming, r/android, r/flutterdev
- **GitHub**: Open source projects
- **Local Meetups**: Developer communities
**Roadmap.sh Reference**: https://roadmap.sh/mobile
---
**Status**: ✅ Production Ready | **SASMP**: v1.3.0 | **Bonded Agent**: 05-mobile-specialistRelated Skills
mobile_react_native
React Native best practices, hooks, navigation ve performance optimization.
mobile-ui-development-rule
General rules pertaining to Mobile UI development. Covers UI/UX best practices, state management, and navigation patterns.
mobile-security-expert
移动安全漏洞挖掘知识库,基于HackerOne公开报告提供Android和iOS应用的漏洞挖掘手法、技术细节和代码模式分析;用于安全研究人员和漏洞挖掘者学习参考、代码审计和漏洞检测指导。
mobile-security-coder
Expert in secure mobile coding practices specializing in input validation, WebView security, and mobile-specific security patterns.
mobile-offline-support
Implement offline-first mobile apps with local storage, sync strategies, and conflict resolution. Covers AsyncStorage, Realm, SQLite, and background sync patterns.
mobile-games
Mobile game development principles. Touch input, battery, performance, app stores.
mobile-frontend
React Native patterns, NativeWind styling, React Native Reusables components, mobile-specific patterns
mobile-first-design-rules
Focuses on rules and best practices for mobile-first design and responsive typography using tailwind.
mobile-development
Cross-platform and native mobile development. Frameworks: React Native, Flutter, Swift/SwiftUI, Kotlin/Jetpack Compose. Capabilities: mobile UI, offline-first architecture, push notifications, deep linking, biometrics, app store deployment. Actions: build, create, implement, optimize, test, deploy mobile apps. Keywords: iOS, Android, React Native, Flutter, Swift, Kotlin, mobile app, offline sync, push notification, deep link, biometric auth, App Store, Play Store, iOS HIG, Material Design, battery optimization, memory management, mobile performance. Use when: building mobile apps, implementing mobile-first UX, choosing native vs cross-platform, optimizing battery/memory/network, deploying to app stores, handling mobile-specific features.
mobile-developer
Develop React Native, Flutter, or native mobile apps with modern architecture patterns. Masters cross-platform development, native integrations, offline sync, and app store optimization. Use PROACTIVELY for mobile features, cross-platform code, or app optimization.
mobile-design
Mobile-first design and engineering doctrine for iOS and Android apps. Covers touch interaction, performance, platform conventions, offline behavior, and mobile-specific decision-making. Teaches pr...
mobile-app-testing
Comprehensive mobile app testing strategies for iOS and Android. Covers unit tests, UI tests, integration tests, performance testing, and test automation with Detox, Appium, and XCTest.