Cek nama file sebelum menambahkan ke list, skip jika sudah ada. Gunakan nama file (bukan URI) karena Android dapat menghasilkan URI berbeda untuk file yang sama di setiap sesi picker.
Desa+
Desa+ (Desa Plus) 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 - Framework mobile cross-platform
- Expo - Platform pengembangan aplikasi React Native
- Firebase - Backend services (Authentication, Realtime Database, Cloud Messaging)
- Redux Toolkit - State management
- React Navigation - Navigasi aplikasi
- TypeScript - Type safety
Instalasi
-
Clone repository ini
git clone <repository-url> cd mobile-darmasaba -
Install dependencies
npm install -
Konfigurasi environment variables Buat file
.envdi root direktori dan tambahkan variabel berikut:URL_API=<api-endpoint> URL_OTP=<otp-service-endpoint> URL_STORAGE=<storage-endpoint> URL_FIREBASE_DB=<firebase-database-url> PASS_ENC=<encryption-password> WA_SERVER_TOKEN=<whatsapp-server-token> IOS_GOOGLE_SERVICES_FILE=<path-to-ios-google-services> -
Jalankan aplikasi
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
npm run android
iOS
npm run ios
Build Production
Untuk membuat build production Android:
npm run build:android
Kontribusi
- Fork repository ini
- Buat branch fitur baru (
git checkout -b fitur/NamaFitur) - Commit perubahan Anda (
git commit -m 'Tambahkan fitur NamaFitur') - Push ke branch (
git push origin fitur/NamaFitur) - Buat pull request
Lisensi
Proyek ini dilisensikan di bawah lisensi MIT - lihat file LICENSE untuk detail selengkapnya.
Dukungan
Jika Anda menemukan masalah atau memiliki pertanyaan, silakan buka issue di repository ini.