Sistem informasi berbasis web untuk mengelola operasional perpustakaan, termasuk manajemen anggota, katalog buku, transaksi peminjaman, pengembalian, dan perhitungan denda.
- CRUD buku dengan upload cover image
- Kategorisasi buku
- Manajemen stok otomatis
- Pencarian dan filter (judul, penulis, ISBN, kategori, ketersediaan)
- CRUD anggota perpustakaan
- Status keanggotaan (Active/Blocked)
- Riwayat peminjaman per anggota
- Pencarian dan filter anggota
- Peminjaman: Pilih anggota & buku, tentukan tanggal kembali
- Pengembalian: Hitung denda otomatis (Rp 1.000/hari)
- Validasi stok dan status anggota
- Export laporan ke CSV
- Statistik real-time (total buku, anggota, pinjaman, terlambat)
- Daftar buku terlambat
- Export laporan transaksi bulanan
- Login admin dengan session
- Manage profile (nama, email)
- Change password
| Komponen | Teknologi |
|---|---|
| Backend | Laravel 12 |
| Frontend | Blade Templates + Tailwind CSS |
| Interactivity | Alpine.js |
| Database | MySQL 8.0+ |
| Icons | Lucide Icons (SVG) |
Pastikan server lokal Anda telah menginstall:
- PHP >= 8.2
- Composer (latest version)
- Node.js >= 18.x
- MySQL >= 8.0 atau MariaDB >= 10.3
- PHP Extensions:
pdo_mysql,mbstring,xml,curl,zip
git clone https://github.com/zinedine098/Library_Management_System.git
cd Library_Management_System# Install PHP dependencies
composer install
# Install Node.js dependencies
npm install# Copy environment file
cp .env.example .env
# Generate application key
php artisan key:generateEdit file .env dan sesuaikan konfigurasi database:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=db_perpus_akreditasi
DB_USERNAME=root
DB_PASSWORD=your_password# Run migrations and seed initial data
php artisan migrate:fresh --seed# Create symbolic link for book cover images
php artisan storage:link# Development build (with hot reload)
npm run dev
# Or production build
npm run build# Start Laravel development server
php artisan serveAplikasi akan berjalan di: http://localhost:8000
Setelah menjalankan seeder, gunakan kredensial berikut untuk login:
| Field | Value |
|---|---|
admin@libloan.com |
|
| Password | password |
libloan-admin/
βββ app/
β βββ Http/Controllers/ # Controllers (Auth, Books, Members, Borrowings)
β βββ Models/ # Eloquent Models (Book, Member, Borrowing, Category)
β βββ Providers/ # Service Providers
βββ database/
β βββ migrations/ # Database migrations
β βββ seeders/ # Database seeders
βββ resources/
β βββ css/ # Tailwind CSS
β βββ js/ # Alpine.js
β βββ views/ # Blade templates
β βββ components/ # Reusable Blade components
β βββ layouts/ # Main layout
β βββ books/ # Book views
β βββ members/ # Member views
β βββ borrowings/ # Borrowing views
β βββ profile/ # Profile views
βββ routes/
β βββ web.php # Web routes
βββ storage/
βββ app/public/ # Uploaded files (book covers)
Sistem menggunakan komponen Blade yang reusable dengan desain Shadcn-inspired:
<x-layouts.app>- Main layout dengan sidebar<x-card>- Card container<x-table>- Styled table<x-input>- Input field<x-select>- Dropdown select<x-button>- Button dengan variants<x-badge>- Status badge<x-modal>- Modal dialog
Jika ingin mengembangkan API di masa depan:
# Install API support
php artisan install:api# Run tests
php artisan test
# Run tests with coverage
php artisan test --coverage- Set
APP_ENV=productiondanAPP_DEBUG=falsedi.env - Run
composer install --optimize-autoloader --no-dev - Run
npm run builduntuk production assets - Run
php artisan config:cache - Run
php artisan route:cache - Run
php artisan view:cache - Setup proper file permissions untuk
storage/danbootstrap/cache/
- PHP 8.2+ dengan OPcache enabled
- MySQL 8.0+ dengan indexing pada kolom search
- SSL/HTTPS untuk production
- Queue worker untuk background jobs (optional)
- CSRF Protection pada semua form
- Password hashing dengan bcrypt
- SQL Injection protection via Eloquent ORM
- XSS protection via Blade templating
- Session-based authentication
Project ini dilisensikan di bawah MIT License.
- Fork repository ini
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Open Pull Request
Untuk pertanyaan atau dukungan, silakan buat issue di repository ini.
Copyright 2026 LibLoan Admin by Zinedine Zidanir Rizki. All rights reserved.