Files
UAS_WEBGIS_DestraAuliaFazaA…/webgis-geopoverty/README.md
T

80 lines
3.6 KiB
Markdown

# 🤝 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.