# Desa+ Desa+ adalah aplikasi mobile berbasis React Native yang dikembangkan dengan Expo untuk membantu pengelolaan dan komunikasi di lingkungan desa/kelurahan. Aplikasi ini menyediakan berbagai fitur untuk memudahkan administrasi desa, komunikasi antar warga, dan pengelolaan informasi penting. ## Fitur Utama - 📢 Pengumuman dan informasi desa - 💬 Forum diskusi komunitas - 📅 Kalender kegiatan desa - 📄 Dokumentasi dan arsip desa - 📊 Pengelolaan proyek dan tugas desa - 👥 Manajemen anggota dan struktur organisasi - 📱 Notifikasi push untuk informasi penting - 🎯 Fitur verifikasi dan otentikasi ## Teknologi yang Digunakan - [React Native](https://reactnative.dev/) - Framework mobile cross-platform - [Expo](https://expo.dev/) - Platform pengembangan aplikasi React Native - [Firebase](https://firebase.google.com/) - Backend services (Authentication, Realtime Database, Cloud Messaging) - [Redux Toolkit](https://redux-toolkit.js.org/) - State management - [React Navigation](https://reactnavigation.org/) - Navigasi aplikasi - [TypeScript](https://www.typescriptlang.org/) - Type safety ## Instalasi 1. Clone repository ini ```bash git clone cd mobile-darmasaba ``` 2. Install dependencies ```bash npm install ``` 3. Konfigurasi environment variables Buat file `.env` di root direktori dan tambahkan variabel berikut: ``` URL_API= URL_OTP= URL_STORAGE= URL_FIREBASE_DB= PASS_ENC= WA_SERVER_TOKEN= IOS_GOOGLE_SERVICES_FILE= ``` 4. Jalankan aplikasi ```bash npx expo start ``` ## Struktur Proyek ``` ├── app/ # File-file halaman utama ├── components/ # Komponen reusable │ ├── announcement/ # Komponen pengumuman │ ├── auth/ # Komponen otentikasi │ ├── discussion/ # Komponen forum diskusi │ ├── document/ # Komponen dokumentasi │ ├── project/ # Komponen pengelolaan proyek │ └── ... ├── assets/ # Gambar dan aset statis ├── constants/ # Konstanta global ├── lib/ # Library dan utilitas └── ... ``` ## Platform Support Aplikasi ini didukung untuk: - ✅ Android - ✅ iOS - ❌ Web (belum dioptimalkan) ## Development Untuk menjalankan aplikasi di masing-masing platform: ### Android ```bash npm run android ``` ### iOS ```bash npm run ios ``` ### Build Production Untuk membuat build production Android: ```bash npm run build:android ``` ## Kontribusi 1. Fork repository ini 2. Buat branch fitur baru (`git checkout -b fitur/NamaFitur`) 3. Commit perubahan Anda (`git commit -m 'Tambahkan fitur NamaFitur'`) 4. Push ke branch (`git push origin fitur/NamaFitur`) 5. Buat pull request ## Lisensi Proyek ini dilisensikan di bawah lisensi MIT - lihat file [LICENSE](LICENSE) untuk detail selengkapnya. ## Dukungan Jika Anda menemukan masalah atau memiliki pertanyaan, silakan buka issue di repository ini.