← Back to Projects

Sampura

Platform web untuk pelaporan sampah, koordinasi pickup, edukasi pengelolaan limbah, rewards, dan monitoring operasional.

Sampura main screenshot

Sampura

Sampura adalah platform web untuk pelaporan sampah, koordinasi pickup, edukasi pengelolaan limbah, rewards, dan monitoring operasional. Sistem ini menghubungkan warga, collector, admin wilayah, dan superadmin dalam satu alur layanan yang dapat dilacak dari laporan awal sampai verifikasi pickup.

Fitur Utama

  • Pelaporan sampah berbasis lokasi, item sampah, lampiran, dan status pickup.

  • Dashboard role-based untuk USER, COLLECTOR, ADMIN, dan SUPERADMIN.

  • Task pickup collector dengan claim, progress, accountability, verifikasi, dan rating.

  • Rewards, points log, achievement, tier, dan leaderboard.

  • Katalog jenis sampah, blog edukasi, landing page, dan peta publik.

  • Admin analytics, manajemen user, master data, pickup monitoring, moderation, dan audit.

  • Chat operasional serta Asisten IJO yang terhubung ke layanan RAG internal.

Arsitektur Singkat

Sampura menggunakan Next.js App Router sebagai application layer. Halaman dan API route berada di app/, proses bisnis berada di features/, helper infrastruktur berada di lib/, dan model database berada di prisma/.

Alur utama sistem:

  1. Browser atau PWA membuka route Next.js.

  2. proxy.ts menjaga session dan redirect untuk route protected.

  3. Server Components menyusun halaman dan memanggil Server Actions untuk data internal.

  4. Server Actions memvalidasi input, session, dan otorisasi.

  5. Feature services menjalankan aturan bisnis dan query Prisma.

  6. PostgreSQL, Supabase Auth, Supabase Storage, Upstash Redis, dan RAG service melayani kebutuhan data/infrastruktur.