Skip to content

nowahgit/SiJelih

Repository files navigation

SiJelih Logo

SiJelih

AI-powered disaster information verifier berbasis data real-time BMKG.

Node.js Next.js TypeScript License

Tentang

SiJelih hadir untuk mengatasi fenomena information chaos dan persebaran hoaks yang masif setiap kali terjadi bencana alam di Indonesia. Masyarakat seringkali terpapar informasi yang tidak valid melalui platform pesan instan sebelum data resmi dirilis, menciptakan kepanikan yang tidak perlu atau sebaliknya, pengabaian terhadap bahaya yang nyata. Terdapat gap kritis antara ketersediaan data teknis di server BMKG dan kemampuan masyarakat awam untuk melakukan validasi mandiri secara cepat.

Solusi yang ditawarkan adalah sebuah sistem verifikasi terpadu yang melakukan cross-check klaim informasi secara paralel terhadap tiga endpoint utama BMKG: TEWS (Tsunami Early Warning System), Nowcast Peringatan Dini, dan Prakiraan Cuaca berbasis wilayah. Menggunakan mesin inferensi LLaMA 3.1 melalui infrastruktur Groq, SiJelih melakukan ekstraksi entitas dan analisis komparasi antara klaim pengguna dengan data meteorologi faktual untuk memberikan verdict yang akurat beserta saran mitigasi yang actionable.

Fitur

Fitur Deskripsi
Verifikasi teks Validasi informasi bencana melalui input teks berbasis AI.
Verifikasi via foto Ekstraksi teks dari tangkapan layar informasi berita menggunakan OCR.
Verifikasi massal Proses verifikasi untuk banyak data sekaligus untuk kebutuhan riset.
Gempa alert real-time Monitoring aktivitas gempa terbaru langsung dari sensor BMKG.
Histori verifikasi Penyimpanan otomatis hasil pengecekan di dalam cloud database.
Share ke WhatsApp Bagikan hasil verifikasi resmi dengan format pesan yang terstruktur.
Panic button geolokasi Akses cepat ke data peringatan dini sesuai lokasi koordinat pengguna.
Dashboard terpadu Panel administrasi dengan metrik verifikasi yang komprehensif.

Tech Stack

Layer Teknologi Keterangan
Frontend Next.js 15 (App Router) Framework React dengan optimasi server-side rendering.
AI Engine Groq LLaMA 3.1 Inferensi AI dengan latensi rendah untuk analisis data.
Data Source BMKG Open Data Sumber kebenaran tunggal untuk data meteorologi dan geofisika.
Authentication Firebase Auth Manajemen identitas pengguna berbasis Google OAuth.
Database Cloud Firestore Penyimpanan dokumen NoSQL untuk histori verifikasi.
Deployment Vercel Platform host untuk aplikasi web modern yang skalabel.

Arsitektur

Data mengalir dari input pengguna melalui API route Next.js, memicu pengambilan data secara paralel dari server BMKG sebelum diproses oleh model LLaMA via Groq untuk menghasilkan respon JSON terstruktur yang kemudian disimpan ke Firestore.

[ USER ] ----(input)----> [ API ROUTE ]
                               |
                -------------------------------
                |              |              |
        [ BMKG TEWS ]   [ BMKG NOWCAST ] [ BMKG WEATHER ]
                |              |              |
                -------------------------------
                               |
                       [ GROQ LLaMA 3.1 ] 
                               |
                (JSON) <-------|
                  |
          [ FIRESTORE ] <---- (SAVE)
                  |
        [ RESPONSE TO UI ]

Struktur Project

sijelih/
├── app/                  # Direktori utama Next.js App Router
│   ├── api/              # API Route handlers (Verify, Auth, Weather)
│   ├── dashboard/        # Layout dan komponen admin panel
│   ├── histori/          # Halaman daftar riwayat verifikasi user
│   ├── login/            # Implementasi login via Firebase UI
│   ├── verifikasi/       # Fitur verifikasi massal dan visual
│   ├── layout.tsx        # Konfigurasi RootLayout, Font, dan Loader
│   └── page.tsx          # Landing page utama (Stripe-styled UI)
├── components/           # Komponen UI modular (Dialog, Toast, Skeletons)
├── hooks/                # Custom React hooks (useToast, useAuthState)
├── lib/                  # Logika inti dan integrasi pihak ketiga
│   ├── bmkg.ts           # Implementasi fetcher data real-time BMKG
│   ├── firebase.ts       # Inisialisasi Firebase SDK Client
│   ├── groq.ts           # Jembatan inferensi AI ke API Groq
│   └── utils.ts          # Fungsi pembantu untuk format data
├── providers/            # React Context (Auth, Toast notification)
├── public/               # Aset statis (Logo, Maskot, Icon)
├── tailwind.config.ts    # Konfigurasi sistem desain Tailwind v4
├── package.json          # Dokumentasi dependensi dan script node
└── tsconfig.json         # Konfigurasi compiler TypeScript

Menjalankan Lokal

  1. Clone repositori ke mesin lokal:
git clone https://github.com/nowahgit/SiJelih.git
  1. Instalasi seluruh dependensi project:
npm install
  1. Konfigurasi variabel lingkungan di file .env.local:
Variable Contoh Value Keterangan
GROQ_API_KEY gsk_... API Key dari Groq Console.
NEXT_PUBLIC_FIREBASE_API_KEY AIzaSy... API Key dari Firebase Project.
NEXT_PUBLIC_FIREBASE_PROJECT_ID sijelih ID unik project Firebase.
  1. Jalankan server pengembangan:
npm run dev

Data Source

Endpoint Data Update
autogempa.json Info gempa M 5.0+ terbaru Real-time
nowcast/id Narasi peringatan dini wilayah Berkala per 30 menit
prakiraan-cuaca Parameter cuaca level kelurahan Berkala per 3 jam

Wajib mencantumkan BMKG sebagai sumber data sesuai ketentuan penggunaan.

IDCamp Hackathon

Project ini dibuat untuk IDCamp Hackathon 2026 dengan tema Small Apps for Big Preparedness, kategori AI-powered disaster preparedness solution.

Credit

  • BMKG atas ketersediaan data terbuka bagi publik.
  • Groq atas penyediaan AI inference API yang sangat cepat.
  • Dicoding IDCamp atas dukungan platform dan tantangan pengembangan.

Dibuat oleh Elnoah Agustinus Markus Manalu.

About

Web App Verifikasi Informasi Bencana Alam

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages