Skip to content
Rafi Akmal Widikta

fullstack

LAPOR BANG MADE

Alur persetujuan penitipan barang pengunjung di rumah detensi imigrasi, dengan notifikasi email dan WhatsApp.

Peran
Fullstack
Tanggal
Januari 2026

Teknologi

  • php
  • laravel
  • mysql
  • blade
  • vite
  • bootstrap
  • sass
  • jquery
  • datatables
  • twilio
  • mailgun

Masalah

Menitipkan barang untuk seseorang di dalam rumah detensi itu rangkaian serah-terima, bukan sekadar pengantaran. Sebelum ini, prosesnya hidup di buku catatan dan percakapan: apa yang dibawa, oleh siapa, untuk deteni yang mana, apakah makanannya diperbolehkan, dan siapa yang menyetujuinya. Tanpa catatan, tidak ada pertanggungjawaban. Dan pengunjung yang menempuh perjalanan jauh tidak punya cara untuk tahu apakah titipannya lolos, atau kenapa tidak.

Solusi

Aplikasi Laravel MVC dengan dua sisi yang sangat berbeda. Pengunjung mendapat form publik tanpa login, di mana satu pengiriman bisa memuat beberapa barang sekaligus beserta fotonya. Staff mendapat antrean, dan antrean itulah intinya: persetujuannya berupa rantai peran, bukan satu keputusan. RAP meninjau barang, Perkes meninjau makanan, Kamtib memvalidasi dan mengonfirmasi fotonya, dan Duta Layanan menyortir barang ke kategori yang benar. Penolakan bukan status yang bisa diubah terburu-buru: wajib disertai alasan tertulis minimal tiga puluh karakter, jadi setiap “tidak” selalu datang dengan penjelasan.

Antreannya memakai paginasi server-side, sehingga daftar yang makin panjang tidak pernah dikirim utuh ke browser. Statusnya satu enum yang bisa dibaca pengunjung sekali lihat, dan setiap perubahan diumumkan lewat email dan WhatsApp (kanal yang memang benar-benar dicek orang di sini). Nomor telepon dinormalisasi dari format lokal 08… ke format internasional 628… sebelum dikirim, dan nilai yang tidak seharusnya tersimpan sebagai teks biasa melewati helper AES-256-CBC milik aplikasinya.

Privasi lebih banyak membentuk desainnya daripada hal lain: orang-orang di sistem ini adalah pengunjung dan deteni, jadi sisi publiknya hanya mengumpulkan yang dibutuhkan prosesnya, dan staff hanya melihat tahap yang menjadi tanggung jawabnya.

Kontak

Tertarik untuk bekerja sama?

Ceritakan apa yang sedang Anda bangun dan apa yang dibutuhkan. Catatan singkat sudah cukup.

Back to top