Skip to content

fazrisuhada/React-Native

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

📱 React Native Journey

GitHub repo size GitHub last commit GitHub issues GitHub stars


📌 Deskripsi

Repository ini berisi dokumentasi perjalanan saya dalam mempelajari React Native dari fundamental hingga implementasi aplikasi mobile. Tujuannya adalah sebagai catatan pembelajaran, tempat eksperimen, serta referensi terbuka bagi siapa saja yang ingin belajar pengembangan aplikasi mobile dengan React Native.


📖 Daftar Isi

⚛️ Dasar-Dasar React Native

  • Setup Environment (Android Studio, Node.js, CLI)
  • Pengenalan JSX dan Komponen
  • Props dan State Management
  • Navigasi (React Navigation)
  • Styling dengan StyleSheet dan Flexbox

📱 Komponen Inti & API

  • View, Text, Image, ScrollView
  • TextInput, Button, TouchableOpacity
  • FlatList dan SectionList
  • Modal, Alert, dan AsyncStorage
  • Networking dengan Fetch API

🎨 Pengembangan UI/UX

  • Komponen Custom dan Komponen yang Dapat Digunakan Kembali
  • Desain Responsif dengan Dimensions
  • Animasi dengan Animated API
  • Penanganan Gesture (PanGestureHandler, dll.)
  • Manajemen Tema (Mode Terang/Gelap)

🔧 Fitur Lanjutan

  • Integrasi Kamera dan Photo Library
  • Maps dan Location Services
  • Push Notifications
  • Penyimpanan Offline (SQLite, Realm)
  • Integrasi Native Modules

🚀 State Management & Arsitektur

  • Context API untuk State Management
  • Implementasi Redux Toolkit
  • MobX State Tree
  • Pengembangan Custom Hooks
  • Pola Clean Architecture

📦 Library Pihak Ketiga

  • UI Libraries (NativeBase, React Native Elements)
  • Navigasi (React Navigation v6)
  • Penanganan Form (Formik, React Hook Form)
  • HTTP Client (Axios)
  • Testing (Jest, React Native Testing Library)

🌐 Integrasi Backend

  • Integrasi REST API
  • GraphQL dengan Apollo Client
  • Authentication (JWT, OAuth)
  • Komunikasi Real-time (Socket.io)
  • Upload File dan Cloud Storage

📱 Spesifik Platform

  • Fitur Khusus Android
  • Fitur Khusus iOS
  • Styling Spesifik Platform
  • Pengembangan Native Bridge
  • Optimisasi Performa

🚀 Deployment & Distribusi

  • Build APK/AAB untuk Android
  • Build IPA untuk iOS
  • Deployment ke Google Play Store
  • Deployment ke Apple App Store
  • CodePush untuk Over-the-Air Updates

📝 Proyek & Latihan

Setiap folder berisi:

  • Tutorial langkah demi langkah
  • Source code lengkap
  • Screenshot aplikasi
  • Catatan pembelajaran
  • Tips dan troubleshooting

🛠️ Prasyarat

  • Node.js v16+
  • npm atau yarn
  • Android Studio (untuk pengembangan Android)
  • Xcode (untuk pengembangan iOS - khusus macOS)
  • React Native CLI atau Expo CLI

🚀 Memulai dengan Cepat

Clone Repository

git clone https://github.com/fazrisuhada/React-Native.git
cd React-Native

Install Dependencies

npm install
# atau
yarn install

Jalankan Proyek

# Untuk Android
npm run android
# atau
npx react-native run-android

# Untuk iOS (khusus macOS)
npm run ios
# atau
npx react-native run-ios

📁 Struktur Proyek

React-Native/
├── 01-Fundamental/           # Konsep dasar dan setup
├── 02-Komponen/              # Pembelajaran core components
├── 03-Navigasi/              # Implementasi navigation
├── 04-StateManagement/       # Pola state management
├── 05-Integrasi-API/         # Integrasi backend
├── 06-UI-UX/                 # Best practices UI/UX
├── 07-Lanjutan/              # Fitur lanjutan
├── 08-Testing/               # Strategi testing
├── 09-Deployment/            # Build dan deployment
├── 10-Proyek/                # Proyek lengkap
└── README.md

📱 Proyek Unggulan

  • 📝 Aplikasi Todo - Operasi CRUD dengan AsyncStorage
  • 🛒 Aplikasi E-Commerce - Katalog produk dengan fungsi keranjang
  • 🎬 Aplikasi Film - Integrasi API dengan TMDB
  • 💬 Aplikasi Chat - Messaging real-time dengan Socket.io
  • 📍 Location Tracker - Integrasi maps dengan GPS
  • 📷 Galeri Foto - Penanganan kamera dan gambar
  • 🎵 Pemutar Musik - Audio playback dengan kontrol
  • 📊 Aplikasi Dashboard - Charts dan visualisasi data

🤝 Kontribusi

Repository ini bersifat open source untuk belajar bersama!

Cara Berkontribusi:

  1. Fork repository ini
  2. Buat branch baru (git checkout -b fitur/fitur-keren)
  3. Commit perubahan (git commit -m 'Tambah fitur keren')
  4. Push ke branch (git push origin fitur/fitur-keren)
  5. Buat Pull Request

Panduan:

  • Pastikan kode berjalan tanpa error
  • Tambahkan dokumentasi yang jelas
  • Ikuti coding standards
  • Test di Android dan iOS (jika memungkinkan)

📚 Sumber Belajar & Referensi


📬 Kontak

👤 Fazri Suhada
🔗 GitHub | LinkedIn
📧 Email: fazrisuhada@example.com


⭐ Dukungan

Jika repository ini membantu pembelajaran Anda, jangan lupa berikan star ⭐ dan follow untuk mendapatkan update terbaru!


📄 Lisensi

Proyek ini dilisensikan di bawah MIT License - lihat file LICENSE untuk detail lebih lanjut.


Selamat Coding! 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published