5.1 KiB
🗺️ WebGIS-Pontianak (Pemetaan Kemiskinan & Tata Ruang)
Sebuah Sistem Informasi Geografis (Geographic Information System / GIS) komprehensif berbasis web yang dirancang untuk memetakan infrastruktur kota dan demografi sosial, dengan fokus utama pada pemetaan kemiskinan dan distribusi bantuan di Pontianak.
Sistem ini dikembangkan dengan arsitektur Multi-Page Application tersinkronisasi dan dilindungi oleh kontrol akses berbasis peran (Role-Based Access Control / RBAC) tingkat lanjut.
✨ Fitur Utama (Core Features)
🔐 Keamanan & Autentikasi Berlapis
- Halaman Login Terisolasi: Autentikasi dipisah sepenuhnya dari halaman utama peta (
login.php) untuk mencegah kebocoran resource ke klien yang tidak sah. - Proteksi Kata Sandi BCRYPT: Standar keamanan industri, divalidasi minimal 8 karakter baik di sisi klien (frontend) maupun server (backend).
- Role-Based Access Control (RBAC): Pemisahan hak akses ketat antara Admin (hak penuh) dan User biasa (hanya-baca & lapor musibah).
- Server-side Gatekeeper: Validasi Session ketat berbasis PHP di setiap akses masuk API maupun perlindungan pengalihan instan (instant redirection) di halaman utama.
- Stylish Notification: Notifikasi pop-up responsif berbasis SweetAlert2 untuk menyambut identitas pengguna.
🗺️ Pemetaan Spasial Multi-Layer
- Leaflet.js Interaktif: Peta dinamis dengan FontAwesome Icon premium untuk visualisasi marker.
- Peta Aset Beragam: Menampilkan visualisasi tumpang tindih untuk Polyline (Jaringan Jalan), Polygon (Parsil Tanah), dan Marker (SPBU & Rumah Ibadah).
- Z-Index & Event Handling Terkelola: Penempatan interactive: false pada radius wewenang rumah ibadah agar tidak menutupi klik (pointer events) dari poligon jalan dan tanah di bawahnya.
- Reverse Geocoding: Pelacakan koordinat GPS real-time terintegrasi Nominatim API.
📊 Algoritma SPK Kemiskinan & Kesejahteraan
Sistem penentuan status keluarga (Sangat Miskin, Miskin, Rentan) yang dikalkulasi secara terpusat berdasarkan parameter Garis Kemiskinan dinamis. Modul ini menyertakan Smart Autofill untuk merekomendasikan jumlah logistik.
🚨 Manajemen Bantuan & Krisis Darurat
- Pemantauan rumah tangga yang berada di dalam maupun luar radius cakupan wewenang rumah ibadah.
- Peringatan darurat musibah dengan efek kelap-kelip visual pada marker (SOS Blink).
- Pencatatan riwayat distribusi bantuan dengan hak visibilitas CRUD yang otomatis disembunyikan dari antarmuka User biasa demi mencegah manipulasi data.
🛠️ Stack Teknologi (Tech Stack)
Frontend
- UI/UX: HTML5, CSS3 Murni (Custom RBAC rules, Smooth Animations, Glassmorphism), SweetAlert2
- Peta Geospasial: Leaflet.js
- Logika Aplikasi: Vanilla JavaScript (ES6+), Fetch API
Backend
- Logika Server & Sesi: PHP 8.x (Stateful Session Management)
- Jembatan Database: PDO (PHP Data Objects) dengan arsitektur Prepared Statements
- Database Relasional: MySQL / MariaDB
🚀 Panduan Instalasi Lokal
1. Kloning Repositori
git clone https://github.com/ChronosSilver/SIG-Poverty-Mapping.git
2. Persiapan Database
- Buka control panel MySQL Anda (
http://localhost/phpmyadmin) - Buat database kosong baru dengan nama:
webgis_pontianak - Import file cadangan
.sqlyang disertakan di repositori ini ke dalam database tersebut.
3. Konfigurasi Sistem
Sistem ini menggunakan parameter default localhost (contoh: XAMPP). Jika password MySQL Anda kosong, tidak ada yang perlu diedit. Sesuaikan pengaturan ini di dalam file koneksi.php:
$host = "localhost";
$user = "root";
$pass = "";
$dbname = "webgis_pontianak";
4. Eksekusi WebGIS
Akses direktori proyek melalui browser pilihan Anda:
http://localhost/SIG1/webgis/Poverty_Mapping/
📂 Struktur Direktori Terbaru
📦 Poverty_Mapping
┣ 📂 components # Kerangka antarmuka modular (Sidebar, Modal Template)
┣ 📂 otak_auth # API gerbang keamanan & manajer sesi PHP
┣ 📂 otak_kemiskinan # Endpoint CRUD penduduk, bantuan & laporan musibah
┣ 📂 otak_jalan # Endpoint spasial penyimpan Polyline Jalan
┣ 📂 otak_tanah # Endpoint spasial penyimpan Polygon Parsil Tanah
┣ 📂 otak_spbu # Endpoint penampung data POI SPBU
┣ 📜 app.js # Otak logika SPA Frontend & Leaflet Rendering
┣ 📜 style.css # Desain tema global & Filter Visibilitas RBAC
┣ 📜 koneksi.php # Jembatan asinkron ke MySQL PDO
┣ 📜 login.php # Lobi isolasi layar kunci (Gatekeeper Entry)
┗ 📜 index.php # Kanvas Peta Utama WebGIS (Terproteksi Sesi)
📝 Pengembang & Lisensi
Sistem Informasi Geografis (SIG) berbasis web ini merupakan purwarupa penelitian/tugas akhir yang secara kontinu berevolusi dari tahun ke tahun. Hak Cipta (2026) oleh Nelson Davey (NIM: D1041231058) - Universitas Tanjungpura.
Mendukung prinsip kode aman dengan akses terotentikasi berlapis. Segala bentuk salinan, distribusi, dan modifikasi harus mencantumkan sumber orisinalitas serta mengikuti kebijakan akademik yang berlaku.