1. State Management
- Redux: Library populer untuk mengelola state global, sering digunakan dengan middleware seperti Redux Toolkit atau Redux Saga untuk manajemen side effects.
- Recoil: Simpel dan cocok untuk aplikasi skala kecil hingga menengah.
- Zustand: Ringan, modern, dan lebih sederhana dibanding Redux.
- MobX: Untuk state management reaktif.
2. Navigation
- React Navigation: Library standar untuk mengelola navigasi (stack, tab, drawer) di React Native.
- React Native Navigation: Dikembangkan oleh Wix, lebih dekat dengan performa native untuk aplikasi besar.
3. API Communication
- Axios: Library populer untuk fetch API dengan fitur seperti interceptors dan konfigurasi request/response.
- React Query (TanStack Query): Untuk data fetching, caching, dan synchronizing API data secara otomatis.
- SWR: Alternatif ringan untuk React Query, digunakan untuk data fetching dan caching.
4. Styling
- Styled Components: Untuk styling berbasis CSS-in-JS.
- Tailwind CSS (via Nativewind): Framework utility-first yang ringan dan fleksibel.
- Emotion: Alternatif CSS-in-JS untuk kebutuhan styling modern.
- React Native Paper: Komponen UI material design yang mudah digunakan.
5. Forms & Validation
- Formik: Library untuk mengelola form di React Native.
- React Hook Form: Lebih ringan dan berbasis hooks.
- Yup: Library untuk validasi schema (biasanya digabung dengan Formik atau React Hook Form).
6. Testing
- Jest: Framework testing standar untuk React Native.
- React Native Testing Library: Untuk testing komponen dengan pendekatan user-centric.
- Detox: Untuk end-to-end testing, khususnya UI testing pada aplikasi React Native.
7. Database
- SQLite: Basis data lokal berbasis SQL, digunakan dengan library seperti
react-native-sqlite-storage
. - AsyncStorage: Untuk penyimpanan key-value sederhana di aplikasi.
- Realm: Basis data lokal dengan performa tinggi.
- Firebase Realtime Database: Untuk aplikasi yang membutuhkan data real-time.
- WatermelonDB: Database reaktif untuk aplikasi besar.
8. Backend Integration
- Firebase: Untuk authentication, database, dan push notifications.
- AWS Amplify: Untuk backend serverless (GraphQL, storage, auth).
- Node.js + Express: Backend berbasis REST API atau GraphQL.
- GraphQL: Untuk query data yang lebih fleksibel.
- Supabase: Alternatif open-source Firebase.
9. Push Notifications
- Firebase Cloud Messaging (FCM): Digunakan untuk mengirim notifikasi push.
- OneSignal: Alternatif populer untuk pengelolaan push notification.
- Expo Notifications: Jika menggunakan managed workflow di Expo.
10. Build & Deployment
- Expo: Untuk aplikasi skala kecil hingga menengah. Memiliki ekosistem kuat, cocok untuk developer pemula.
- Fastlane: Otomatisasi CI/CD untuk build dan deployment.
- EAS (Expo Application Services): Build dan deploy aplikasi Expo dengan mudah.
- CodePush: Untuk mengirim update aplikasi secara over-the-air (OTA).
11. Crash Reporting dan Monitoring
- Sentry: Untuk melacak error dan crash di aplikasi.
- Firebase Crashlytics: Alternatif untuk memonitoring crash.
12. UI Libraries
- React Native Elements: Library UI yang memiliki berbagai komponen siap pakai.
- React Native Paper: Komponen UI berbasis material design.
- NativeBase: UI library dengan komponen yang mudah disesuaikan.
- Lottie: Untuk animasi berbasis JSON.
0 Komentar