# 🀝 GeoPoverty - Sistem Informasi Geografis Pemetaan Sosial ## πŸ“Œ Deskripsi Proyek **GeoPoverty** adalah aplikasi **WebGIS interaktif berbasis LeafletJS, PHP, dan MySQL** yang dirancang khusus untuk memetakan keluarga prasejahtera (kemiskinan) dan rumah ibadah . Tujuan utama dari sistem ini adalah untuk membantu identifikasi dan distribusi bantuan sosial agar lebih tepat sasaran. Aplikasi ini menggunakan konsep *buffer radius* (zona jangkauan) rumah ibadah untuk memantau rumah mana saja yang masuk ke dalam radius bantuan dan mana yang belum terjangkau. --- ## 🎯 Fitur Utama ### 1. πŸ‘₯ Manajemen Data Kemiskinan * Pemetaan titik lokasi (Point) keluarga prasejahtera. * Menyimpan informasi detail seperti Nama Kepala Keluarga, Jumlah Anggota KK, dan Alamat. * Tampil sebagai marker interaktif di atas peta. ### 2. πŸ•Œ Manajemen Data Rumah Ibadah (Masjid) * Pemetaan lokasi masjid beserta penanggung jawab (PIC). * **Fitur Radius (Buffer):** Secara otomatis menggambar lingkaran dengan radius 500 meter di sekitar masjid. * Memudahkan identifikasi keluarga prasejahtera yang berada di dalam maupun di luar zona jangkauan bantuan masjid tersebut. ### 3. πŸ“’ Sistem Laporan Warga & Pesan * Memungkinkan warga untuk melaporkan kondisi sosial atau keluarga yang membutuhkan bantuan di sekitarnya. * Data laporan dikelola secara terpusat dan memiliki status penanganan (Menunggu, Diproses, Selesai). ### 4. πŸ—ΊοΈ Simulasi Rute (Routing) * Integrasi Leaflet Routing Machine. * Mampu menyimulasikan dan menggambar rute jalan dari titik posko/masjid menuju rumah tujuan penerima bantuan. ### 5. πŸ–¨οΈ Ekspor Data & Laporan * **Cetak Peta (PDF):** Mengekspor tampilan peta saat ini ke dalam format PDF menggunakan tangkapan layar otomatis. * **Unduh Data (CSV):** Mengunduh data atribut kemiskinan dan masjid ke format CSV untuk analisis lanjutan. --- ## βš™οΈ Teknologi yang Digunakan * **Frontend:** HTML5, CSS3 (Custom UI Glassmorphism), Vanilla JavaScript * **Pemetaan (GIS):** Leaflet.js * **Plugin GIS:** * Leaflet Routing Machine (Rute jalan) * dom-to-image & jsPDF (Ekspor PDF) * **Backend:** PHP (Native) * **Database:** MySQL (Cloud/Remote Database) --- ## πŸ—„οΈ Struktur Database Sistem ini terhubung ke MySQL dan secara otomatis membuat tabel jika belum ada (*Auto Bootstrap*). Tabel utama meliputi: 1. **`kemiskinan`**: Menyimpan identitas, jumlah anggota, alamat, serta koordinat (Latitude & Longitude) keluarga. 2. **`masjid`**: Menyimpan data masjid, PIC, koordinat, serta besaran radius cakupan bantuan (default: 500m). 3. **`laporan`**: Menyimpan data laporan dari warga beserta bukti foto dan titik koordinat temuan. 4. **`pesan`**: Menyimpan pesan/kontak masuk dari pengunjung. --- ## πŸš€ Cara Menjalankan Aplikasi Aplikasi ini menggunakan server bawaan PHP sehingga **tidak memerlukan XAMPP/Laragon**. Sangat ringan dan praktis untuk dijalankan langsung dari terminal IDE (seperti VSCode). 1. Buka terminal di dalam folder utama proyek (bukan di dalam folder `webgis-geopoverty`, melainkan di luarnya). 2. Jalankan perintah server PHP bawaan: ```bash php -S localhost:8000 ``` 3. Buka *browser* pilihan Anda dan akses alamat: ```text http://localhost:8000/webgis-geopoverty/ ``` 4. Sistem akan otomatis terhubung ke *Cloud Database MySQL* yang sudah dikonfigurasi di file `php/koneksi.php`. --- ## πŸŽ“ Kesimpulan GeoPoverty bukan sekadar peta digital biasa, melainkan sebuah instrumen pengambilan keputusan spasial (*Spatial Decision Support System*). Dengan adanya fitur *buffer* radius rumah ibadah dan simulasi rute, diharapkan penyaluran bantuan sosial kepada keluarga prasejahtera bisa dilakukan dengan jauh lebih merata, transparan, dan efisien.