Sistem manajemen peminjaman alat dan peralatan terintegrasi untuk sekolah, laboratorium, atau organisasi lainnya. Dirancang untuk mempermudah pengelolaan stok, persetujuan peminjaman, dan pencatatan pengembalian dengan antarmuka yang intuitif dan responsif.
- Stok Terpusat: Pantau ketersediaan barang secara real-time dengan dashboard yang jelas
- Approval Cepat: Validasi peminjaman oleh admin/petugas hanya dengan satu klik
- Riwayat & Notifikasi: Rekam jejak otomatis dan pengingat untuk barang yang dipinjam
- Kondisi Barang: Catat kondisi barang saat kembali agar kerusakan cepat terdeteksi
- Multi Kategori: Mendukung berbagai kategori alat (Elektronik, Olahraga, Lab, Kantor, dll)
- Activity Log: Pencatatan lengkap setiap aktivitas dalam sistem
- Admin: Kelola kategori, alat, pengguna, dan persetujuan peminjaman
- Petugas: Validasi peminjaman, serahkan/terima barang, catat kondisi
- Peminjam: Ajukan peminjaman, lihat riwayat, kelola barang yang dipinjam
- Backend: Laravel 13 + PHP 8.3
- Frontend: Tailwind CSS 3.1, Alpine.js 3.4, Vite
- Database: SQLite (default) atau MySQL
- Testing: PEST + Mockery
- Build Tools: Laravel Vite Plugin, PostCSS
- PHP 8.3+
- Composer
- Node.js & npm
- Database (SQLite atau MySQL)
-
Clone atau extract project:
cd p1-peminjaman -
Jalankan setup script:
composer run setup
Script ini akan:
- Install dependencies PHP
- Copy
.env.example→.env - Generate APP_KEY
- Migrasi database
- Install dependencies Node.js
- Build assets
composer run devIni menjalankan 3 proses secara bersamaan:
- Laravel development server (port 8000)
- Queue listener untuk background jobs
- Vite dev server untuk hot-reload
npm run build
php artisan serveJalankan test dengan PEST:
composer testapp/
├── Http/Controllers/ # Route logic
├── Models/ # Eloquent models (User, Tool, Loan, dll)
└── Support/ # Helper classes
database/
├── migrations/ # Schema migrations
├── seeders/ # Database seeders
└── database.sql # Database dump
resources/
├── css/ # Tailwind styles
├── js/ # Alpine.js components
└── views/ # Blade templates
routes/
├── web.php # Web routes
└── auth.php # Auth routes
tests/
├── Feature/ # Feature tests
└── Unit/ # Unit tests
User- Pengguna sistem dengan role-based accessCategory- Kategori alatTool- Data alat/peralatanLoan- Pengajuan peminjamanLoanDetail- Detail item dalam satu peminjamanReturnLoan- Pencatatan pengembalian barangActivityLog- Log semua aktivitas
Edit .env:
APP_NAME="InventoryFlow"
APP_DEBUG=true
DB_CONNECTION=sqlite
# atau MySQL:
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=peminjaman- Sistem menggunakan role-based authorization
- Semua peminjaman harus disetujui sebelum barang diserahkan
- Kondisi barang dicatat saat pengembalian untuk tracking kerusakan
- Activity log mencatat setiap perubahan untuk audit trail
MIT License