Inspiration
Bencana hidrometeorologi seperti banjir perkotaan di Surabaya bergerak sangat cepat dan dinamis. Kendala mendasar penanganan bencana saat ini bukan ketiadaan kanal pelaporan, melainkan krisis konsolidasi dan kesegaran informasi. Laporan di grup pesan instan dan media sosial tersebar tanpa struktur, cepat usang, dan membingungkan publik mengenai kondisi riil di lapangan.
Sistem pelaporan konvensional terjebak dalam The Panic Delusion, yaitu asumsi keliru bahwa korban di tengah ancaman genangan dan baterai kritis sanggup mengisi formulir berjenjang dengan koordinat GPS presisi. Di sisi lain, jutaan warga yang cemas di rumah menjadi korban kepanikan massal akibat pesan berantai WhatsApp. PANICCHECK lahir untuk membalik paradigma ini: menghadirkan pemindai pesan instan di posisi teratas antarmuka serta membuka akses pelaporan darurat tanpa beban login.
What it does
PANICCHECK bekerja dengan alur inti REPORT -> VERIFY -> CLUSTER -> UPDATE untuk mengubah kumpulan pesan panik menjadi data kejadian yang terstruktur:
Quick Check Scanner: Kotak input di bagian teratas layar tempat warga cukup menempelkan teks pesan WhatsApp untuk dicocokkan secara instan ke titik kejadian aktif di peta tanpa perlu mengisi formulir.
Pelaporan Tanpa Login: Memungkinkan warga di titik kejadian mengirim laporan secara cepat melalui web seluler atau bot percakapan Telegram.
Konsolidasi Spasial-Temporal Otomatis: Menyatukan beberapa laporan yang berada dalam radius 500 meter dan jendela waktu 2 jam menjadi satu titik kejadian tunggal, menjaga peta tetap bersih dari duplikasi.
Siklus Hidup Data yang Jujur: Titik kejadian berstatus ACTIVE akan otomatis berubah menjadi STALE berlabel "Perlu Konfirmasi" jika tidak ada kabar baru selama 2 jam, sehingga pembaca tahu informasi tersebut mulai usang.
Penutupan Berbasis Bukti Lapangan: Status RESOLVED hanya dapat ditutup secara sah oleh Relawan Terverifikasi yang mengunggah foto surut serta koordinat GPS langsung dari lokasi kejadian.
Health Exposure Tag: Menampilkan kartu edukasi kewaspadaan masa inkubasi bakteri Leptospirosis hingga 14 hari sesaat setelah genangan dinyatakan surut.
How we built it
Backend & Basis Data: Dibangun menggunakan Laravel (PHP) dan MySQL, dirancang dengan arsitektur transaksi data berbasis penguncian baris (pessimistic locking) agar penggabungan laporan simultan tidak menimbulkan event ganda.
Peta Interaktif: Menggunakan pustaka Leaflet.js dan OpenStreetMap yang ringan, ramah perangkat seluler, serta bebas biaya lisensi.
Ekstraksi Teks Cerdas: Menerapkan kombinasi parser pola aturan lokal (regex) untuk mengenali nama jalan di Surabaya serta integrasi model AI ringan sebagai pendukung identifikasi tinggi air dan lokasi.
Challenges we ran into
Pencegahan Konflik Data Simultan: Ketika puluhan laporan masuk pada koordinat berdekatan dalam detik yang sama, sistem rentan membuat titik kejadian ganda. Masalah ini diatasi dengan mengunci baris data pencarian saat transaksi penggabungan berlangsung.
Integritas Data Publik: Mengizinkan laporan tanpa login membuka celah spam. Solusinya, konfirmasi silang diwajibkan menggunakan akun login, pelapor awal dilarang memvalidasi laporannya sendiri, dan frekuensi pengiriman laporan dibatasi secara ketat.
Accomplishments that we're proud of
Menyelesaikan seluruh paket fitur utama (M1 hingga M10) dalam sprint 24 jam, mulai dari scanner cepat, pemetaan, klaster otomatis, hingga siklus status kejadian yang berfungsi penuh.
Merancang alur verifikasi multi-pihak yang transparan: warga mengonfirmasi secara konsensus, sementara relawan memegang otoritas penutupan berbasis bukti fisik lapangan.
Menutup seluruh siklus resiliensi bencana hingga tuntas (end-to-end), tidak hanya fokus pada tanggap darurat saat banjir tetapi juga mitigasi risiko kesehatan warga pascabencana.
What we learned
Desain Berpusat Manusia pada Situasi Krisis: Menurunkan friksi aplikasi sekecil mungkin (seperti melapor tanpa login) jauh lebih berharga bagi keselamatan warga dibandingkan antarmuka rumit dengan segudang formulir.
Ketepatan Arsitektur: Pemilihan basis data relasional yang kokoh dan kalkulasi spasial deterministik memberikan keandalan sistem yang jauh lebih tinggi dalam batas waktu pengembangan yang singkat.
What's next for PANICCHECK
Integrasi resmi dengan WhatsApp Business Platform untuk memperluas jangkauan bot pelaporan ke kanal percakapan utama masyarakat.
Penyematan umpan data cuaca dan peringatan dini langsung dari BMKG secara otomatis.
Pengembangan modul penugasan relawan lapangan dengan pemantauan posisi dinamis (live tracking) saat operasi verifikasi.
Pelaksanaan proyek percontohan (pilot project) bersama BPBD Kota Surabaya, kelurahan, dan simpul relawan bencana lokal.
Built With
- haversine-algorithm
- javascript
- laravel11
- leaflet-js
- mysql
- openstreetmap
- php
- php3
- pwa
- regex
- regex-parser
- rest-api
- spatial-clustering
- tailwind-css
- telegram-bot-api
Log in or sign up for Devpost to join the conversation.