This commit establishes the foundational structure for the Karyaman project, focusing on the camping equipment rental web application. Key additions include: - Scaffolding for three React applications: `adventure-rental-app`, `motel-app`, and `pakrete-app` using Create React App. - Initial implementation of `HomePage` and `CategoriesPage` components for the `adventure-rental-app`, based on provided design mockups. - Project documentation including PRDs and design files for the applications. - Configuration of the Kilo Code memory bank with core project details such as architecture, product vision, and tech stack.
6.9 KiB
Product Requirements Document (PRD) - Web App Administrasi & Manajemen RT
-
Pendahuluan Dokumen ini menjelaskan persyaratan fungsional dan non-fungsional untuk pengembangan web aplikasi administrasi dan manajemen tingkat RT. Tujuan utama aplikasi ini adalah untuk mempermudah pekerjaan pengurus RT dalam mengelola data warga, keuangan, serta proses permohonan surat secara efisien dan transparan.
-
Tujuan Proyek Meningkatkan efisiensi administrasi dan pencatatan data di tingkat RT.
Mempermudah warga dalam mengajukan permohonan surat dan memantau statusnya.
Meningkatkan transparansi pengelolaan keuangan RT.
Menyediakan platform komunikasi dan informasi yang terpusat antara pengurus dan warga.
- Target Pengguna Pengurus RT: Ketua RT, Sekretaris, Bendahara, dan staf lain yang ditunjuk untuk mengelola administrasi.
Warga RT: Seluruh penduduk yang terdaftar di lingkungan RT tersebut.
- Fitur Utama 4.1. Manajemen Data Warga Warga & Pengurus: Dapat melihat daftar warga.
Pengurus:
Pendaftaran Warga Baru: Menambahkan data warga baru (nama lengkap, NIK, alamat lengkap, tanggal lahir, jenis kelamin, status pernikahan, pekerjaan, nomor telepon, status tinggal: tetap/kontrak).
Pembaruan Data Warga: Mengubah informasi pribadi warga yang sudah terdaftar.
Pencarian & Filter Warga: Mencari warga berdasarkan nama, nomor rumah, atau NIK.
Riwayat Tinggal: Mencatat riwayat pindah masuk atau pindah keluar warga dari RT (tanggal pindah, alamat sebelumnya/tujuan).
Informasi Keluarga: Mendata anggota keluarga dari setiap Kepala Keluarga (KK), termasuk hubungan (istri, anak, orang tua), nama, NIK, dan tanggal lahir.
4.2. Manajemen Iuran & Keuangan Warga: Dapat melihat riwayat pembayaran iuran mereka.
Pengurus:
Pencatatan Iuran Bulanan: Mencatat pembayaran iuran keamanan, kebersihan, atau iuran lainnya per warga per bulan/periode. Termasuk status pembayaran (Lunas/Belum Lunas) dan tanggal pembayaran.
Manajemen Tagihan: Membuat dan mengelola tagihan iuran.
Laporan Keuangan Pemasukan: Menampilkan rekapitulasi semua pemasukan RT (iuran, sumbangan) dalam periode tertentu (harian, bulanan, tahunan) dalam bentuk tabel.
Pencatatan Pengeluaran: Mengelola semua pengeluaran RT dengan detail (tanggal, jenis pengeluaran, jumlah, deskripsi).
Laporan Keuangan Pengeluaran: Menampilkan rekapitulasi semua pengeluaran RT dalam periode tertentu dalam bentuk tabel.
Neraca Keuangan Sederhana: Menampilkan saldo kas terkini dan total piutang iuran.
4.3. Manajemen Permohonan Surat (Pengajuan Online, Output Manual) Warga:
Formulir Pengajuan Permohonan Surat:
Memilih jenis surat yang dibutuhkan (misalnya: Surat Keterangan Domisili, Surat Pengantar KTP/KK, Surat Izin Keramaian, Surat Keterangan Usaha).
Mengisi detail relevan sesuai jenis surat.
Mengunggah dokumen pendukung (jika diperlukan, misal: fotokopi KK, KTP).
Status Permohonan: Melacak status permohonan surat (Diajukan, Dalam Proses, Siap Diambil, Ditolak).
Notifikasi Perubahan Status: Menerima notifikasi otomatis (di aplikasi) ketika status permohonan berubah.
Riwayat Permohonan: Melihat daftar semua permohonan surat yang pernah diajukan, beserta status dan tanggal pengajuan.
Pengurus:
Daftar Permohonan Surat Masuk: Melihat semua permohonan surat baru dan yang sedang diproses. Dapat memfilter berdasarkan status atau jenis surat.
Detail Permohonan & Verifikasi: Melihat detail lengkap permohonan, memverifikasi data dan dokumen pendukung.
Aksi Terhadap Permohonan:
Mengubah status permohonan.
Menolak permohonan dengan alasan.
Mencatat tanggal dan waktu surat yang sudah selesai siap diambil oleh warga.
Riwayat Aksi Pengurus: Mencatat log aktivitas perubahan status pada permohonan.
4.4. Informasi & Pengumuman Pengurus:
Membuat Pengumuman: Memposting pengumuman penting (rapat warga, kegiatan RT, informasi darurat) yang dapat dilihat semua warga.
Mengelola Jadwal Kegiatan: Menambahkan, mengedit, dan menghapus jadwal kegiatan RT (rapat, kerja bakti, perayaan).
Warga & Pengurus:
Melihat Pengumuman: Mengakses daftar pengumuman terbaru.
Melihat Jadwal Kegiatan: Mengakses kalender kegiatan RT.
Melihat Kontak Penting: Mengakses daftar kontak darurat (kepolisian, pemadam kebakaran) dan kontak pengurus RT.
- Arsitektur Teknis Frontend:
Teknologi: Create React App (CRA)
Deskripsi: Aplikasi web akan dibangun menggunakan ReactJS untuk antarmuka pengguna yang responsif dan interaktif.
Backend:
Teknologi: n8n
Deskripsi: n8n akan digunakan sebagai workflow automation tool untuk menangani logika bisnis, integrasi data, dan API endpoints. n8n akan berinteraksi dengan database dan menyediakan API untuk frontend.
Database:
Teknologi: (Misal: PostgreSQL, MySQL, atau SQLite - Perlu ditentukan lebih lanjut)
Deskripsi: Database akan digunakan untuk menyimpan semua data aplikasi (data warga, iuran, surat, pengumuman).
- Persyaratan Non-Fungsional Performa: Aplikasi harus responsif dengan waktu muat halaman maksimal 3 detik pada koneksi internet standar.
Keamanan:
Otentikasi pengguna yang aman (login).
Enkripsi data sensitif (misal: NIK).
Pembatasan akses berdasarkan peran pengguna (pengurus vs. warga).
Skalabilitas: Mampu menangani hingga 500 Kepala Keluarga tanpa penurunan performa yang signifikan.
Usability: Antarmuka pengguna harus intuitif dan mudah digunakan oleh semua kalangan warga dan pengurus.
Kompatibilitas: Kompatibel dengan browser modern utama (Chrome, Firefox, Edge, Safari).
Maintainability: Kode harus terstruktur dengan baik, mudah dipahami, dan dapat diperbaiki atau dikembangkan di masa mendatang.
- Alur Pengguna (User Flows) Alur Login:
Pengguna (Warga/Pengurus) mengakses aplikasi.
Memasukkan Username/Email dan Password.
Sistem memverifikasi kredensial.
Jika berhasil, masuk ke dashboard sesuai peran. Jika gagal, menampilkan pesan error.
Alur Pengajuan Surat (Warga):
Warga login.
Pilih menu "Surat Menyurat".
Pilih "Ajukan Permohonan Baru".
Pilih jenis surat dan isi formulir.
Unggah dokumen pendukung (jika ada).
Submit permohonan.
Melihat status permohonan di riwayat.
Alur Verifikasi Surat (Pengurus):
Pengurus login.
Pilih menu "Surat Menyurat".
Melihat daftar permohonan baru.
Pilih permohonan untuk melihat detail.
Verifikasi data dan dokumen.
Ubah status permohonan (misal: "Dalam Proses", "Siap Diambil", "Ditolak").
Tambahkan catatan internal (jika diperlukan).
Alur Pencatatan Iuran (Pengurus):
Pengurus login.
Pilih menu "Manajemen Keuangan" -> "Iuran".
Pilih warga yang membayar.
Masukkan jumlah, tanggal pembayaran, dan jenis iuran.
Simpan catatan pembayaran.
Melihat laporan iuran.
- Definisi "Selesai" (Definition of Done) Semua fitur yang disebutkan di bagian 4 telah diimplementasikan dan berfungsi sesuai spesifikasi.
Antarmuka pengguna telah diuji dan memenuhi persyaratan usability.
Semua bug kritis dan mayor telah diperbaiki.
Aplikasi telah lulus pengujian keamanan dasar.
Dokumentasi teknis untuk frontend dan backend telah tersedia.
Pengujian penerimaan pengguna (UAT) telah berhasil dilakukan.