Platform manajemen penyewaan properti (Kos/Kontrakan) yang dibangun menggunakan Laravel. Aplikasi ini dirancang untuk mempermudah Pemilik (Owner) dalam mengelola unit dan pembayaran, serta mempermudah Penyewa (Tenant) dalam melakukan pelaporan maintenance dan konfirmasi pembayaran.
- Multi-Role Authentication: Mendukung 3 level pengguna (Admin, Owner, Tenant) menggunakan Spatie Laravel Permission.
- Dashboard Terpisah: Tampilan dashboard yang dipersonalisasi sesuai dengan role masing-masing.
- Manajemen Pembayaran: Tenant dapat mengunggah bukti pembayaran, dan Owner dapat memverifikasi secara real-time.
- Layanan Maintenance: Tenant dapat mengajukan permintaan perbaikan unit melalui sistem.
- Manajemen Pengguna: Admin memiliki kendali penuh untuk mengelola akun pengguna di dalam sistem.
- Framework: Laravel 12
- Database: MySQL / SQLite
- Role Management: Spatie Laravel Permission
- Frontend: Blade Templating, Tailwind CSS, Alpine.js (Laravel Breeze)
- Auth: Laravel Breeze (Session Based)
- PHP >= 8.2
- Composer
- Node.js & NPM
-
Clone Repository
git clone https://github.com/username/sistem-kos-kontrakan.git cd sistem-kos-kontrakan -
Instal Dependensi
composer install npm install && npm run build -
Konfigurasi Environment Salin file
.env.examplemenjadi.envdan sesuaikan pengaturan database Anda.cp .env.example .env php artisan key:generate
-
Migrasi Database & Seeding Jalankan migrasi untuk membuat tabel dan seeder untuk membuat Role serta akun Admin default.
php artisan migrate --seed
Aplikasi ini menggunakan sistem Role-Based Access Control (RBAC). Daftar Role yang tersedia:
admin: Manajemen penuh sistem dan pengguna.owner: Mengelola unit kos, memverifikasi pembayaran, dan mengelola maintenance.tenant: Melakukan pembayaran dan mengajukan maintenance.
Untuk memberikan role secara manual via Tinker:
$user = User::find(1);
$user->assignRole('admin');app/Http/Controllers/Auth: Logika registrasi dan login (dengan assign role otomatis).database/seeders/RolesSeed.php: Konfigurasi awal Role dan akun Admin.resources/views/layouts/navigation.blade.php: Navigasi dinamis berbasis role.
Proyek ini dikembangkan untuk tujuan pembelajaran dan manajemen internal. Silakan hubungi pengembang untuk informasi lebih lanjut.