# SIAKAD - Sistem Informasi Akademik

## Cara Menjalankan Sistem

### 1. Menjalankan di Local (Development)

```bash
# Masuk ke folder project
cd c:\Users\Acer\siakad

# Jalankan server Laravel
php artisan serve
```

Server akan berjalan di: `http://localhost:8000`

---

### 2. Setup Database

```bash
# Buat database MySQL dengan nama 'siakad'

# Jalankan migration
php artisan migrate

# (Opsional) Seed data awal
php artisan db:seed
```

---

### 3. Login Default

| Role | Email | Password |
|------|-------|---------|
| Admin | admin@siakad.test | password |
| Dosen | dosen@siakad.test | password |
| Mahasiswa | mahasiswa@siakad.test | password |

---

### 4. Perintah Penting

```bash
# Clear cache
php artisan cache:clear
php artisan config:clear
php artisan view:clear

# Clear semua cache
php artisan optimize:clear

# Generate app key
php artisan key:generate

# Link storage
php artisan storage:link

# Build frontend (jika ada perubahan CSS/JS)
npm run build
```

---

### 5. Struktur Menu

#### Admin (/admin/*)
- Dashboard
- Data Akademik (Prodi, Tahun Akademik, Ruangan, Jadwal)
- Data Pengguna (Dosen, Mahasiswa)
- Mata Kuliah & Paket MK
- Nilai & Bobot Nilai
- Presensi
- Jadwal KRS
- Import / Export Data
- Pengumuman
- Kalender Akademik
- Backup Database
- Activity Log
- Pengaturan

#### Dosen (/dosen/*)
- Dashboard
- Akademik (Jadwal Mengajar, KRS Approval, Nilai)
- Presensi
- Pengumuman

#### Mahasiswa (/akademik/*)
- Dashboard
- Kartu Studi (KRS, KHS, Transkrip, Absensi)
- Pengumuman
- Kalender Akademik

---

### 6. Hosting / Deployment

#### Shared Hosting (cPanel)
1. Upload file ke `public_html/`
2. Pindahkan isi `/public` ke `public_html`
3. Setup database via phpMyAdmin
4. Set permission: `chmod -R 755 storage/`
5. Edit `public_html/index.php` sesuaikan path

#### VPS
```bash
# Install dependencies
composer install --optimize-autoloader

# Setup environment
cp .env.example .env
php artisan key:generate

# Setup database
php artisan migrate

# Setup cron
* * * * * cd /path-to-project && php artisan schedule:run >> /dev/null 2>&1
```

---

### 7. Troubleshooting

| Masalah | Solusi |
|---------|--------|
| Blank page | Set `APP_DEBUG=true` di .env |
| 500 Error | Check `storage/logs/laravel.log` |
| Database error | Pastikan credentials di .env benar |
| Permission denied | `chmod -R 755 storage bootstrap/cache` |

---

### 8. Teknologi yang Digunakan

- **Framework:** Laravel 11
- **PHP:** 8.2+
- **Database:** MySQL
- **Frontend:** Bootstrap 5, Bootstrap Icons, Google Fonts
- **Excel:** PhpSpreadsheet
- **PDF:** DomPDF

---

### 9. Fitur Utama

- Manajemen User (Admin, Dosen, Mahasiswa)
- Manajemen Akademik (Prodi, Matakuliah, Jadwal)
- KRS (Kartu Rencana Studi) dengan persetujuan
- Input Nilai dengan bobot
- Presensi / Absensi
- Jadwal KRS (Pengajuan & Persetujuan)
- Import / Export Data Excel
- Export PDF (KRS, KHS, Transkrip)
- Backup Database
- Notifikasi real-time
- Pengaturan sistem (logo, warna, dll)

---

*Terakhir diupdate: 2026-05-04*
