← Back to list

mobile-react-native
by vuralserhat86
OS for Agents: 130+ Agentic Skills, Gemini Protocols, and Autonomous Workflows. (Antigravity System)
⭐ 19🍴 9📅 Jan 23, 2026
SKILL.md
name: mobile_react_native router_kit: FullStackKit description: React Native best practices, hooks, navigation ve performance optimization. metadata: skillport: category: development tags: [accessibility, api integration, backend, browser apis, client-side, components, css3, debugging, deployment, frameworks, frontend, fullstack, html5, javascript, libraries, mobile react native, node.js, npm, performance optimization, responsive design, seo, state management, testing, typescript, ui/ux, web development] - mobile-flutter
📱 Mobile React Native
React Native best practices ve performance optimization.
📁 1. Proje Yapısı
src/
├── components/
│ ├── common/ # Reusable
│ └── screens/ # Screen components
├── hooks/ # Custom hooks
├── services/ # API, storage
├── store/ # State (Zustand)
├── navigation/
└── App.tsx
⚡ 2. Performance
// FlatList optimizasyonu
<FlatList
data={items}
keyExtractor={(item) => item.id}
removeClippedSubviews={true}
maxToRenderPerBatch={10}
windowSize={5}
getItemLayout={(data, index) => ({
length: ITEM_HEIGHT,
offset: ITEM_HEIGHT * index,
index,
})}
/>
// Memoization
const Component = React.memo(({ data }) => { });
const callback = useCallback(() => {}, [deps]);
const value = useMemo(() => compute(), [deps]);
🔐 3. Secure Storage
// ❌ AsyncStorage güvenli değil
// ✅ SecureStore kullan
import * as SecureStore from 'expo-secure-store';
await SecureStore.setItemAsync('token', userToken);
const token = await SecureStore.getItemAsync('token');
🧭 4. Navigation
type RootStackParamList = {
Home: undefined;
Profile: { userId: string };
};
const Stack = createNativeStackNavigator<RootStackParamList>();
📦 5. State (Zustand)
import { create } from 'zustand';
import { persist } from 'zustand/middleware';
const useAuthStore = create(
persist(
(set) => ({
user: null,
login: (user) => set({ user }),
logout: () => set({ user: null }),
}),
{ name: 'auth-storage' }
)
);
📱 6. Platform-Specific
import { Platform } from 'react-native';
const padding = Platform.select({ ios: 20, android: 0 });
// Dosya bazlı: Button.ios.tsx, Button.android.tsx
Mobile React Native v1.1 - Enhanced
🔄 Workflow
Kaynak: React Native Performance Guide & Expo Guideline
Aşama 1: Setup & Architecture
- Framework: Expo (Managed Workflow) ile başla,
expo-routerv3 kullan. - State: Zustand veya TanStack Query ile server/client state ayrımını yap.
- Styling: NativeWind (Tailwind) veya Restyle ile tutarlı tasarım sistemi kur.
Aşama 2: Performance Optimization
- Lists:
FlatListyerineFlashList(Shopify) kullan (5x performans). - Images:
expo-imageile caching ve blurhash desteği ekle. - Bundle:
Hermesengine'i aktifleştir ve bundle size analizi yap.
Aşama 3: Native Modules & Release
- Native: Gerekirse Custom Native Module (Turbo Modules) yaz.
- Updates:
expo-updatesile store onayı beklemeden OTA (Over-the-Air) güncelleme yap. - Profiling: Flipper veya React DevTools ile FPS ve Memory Leak kontrolü yap.
Kontrol Noktaları
| Aşama | Doğrulama |
|---|---|
| 1 | UI thread (JS thread) 60fps'in altına düşüyor mu? |
| 2 | Uygulama boyutu (APK/IPA) optimize edildi mi? |
| 3 | Android ve iOS davranışları (Navigation, Keyboard) tutarlı mı? |
Score
Total Score
60/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
✓説明文
100文字以上の説明がある
+10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon