Skip to content
Β 
Β 

Repository files navigation

Telkom Security - Sistem Manajemen Izin Siswa

Aplikasi web untuk mengelola izin siswa di Telkom School, dibangun dengan Laravel 12 dan Tailwind CSS.

Fitur Utama

  • πŸ” Autentikasi Multi-Role: Admin, Guru, dan Siswa
  • πŸ“ Manajemen Izin Siswa: Siswa dapat membuat dan mengedit izin
  • βœ… Approval System: Guru dapat menyetujui atau menolak izin
  • πŸ‘₯ User Management: Admin dapat mengelola semua pengguna
  • πŸ”“ Public View: Tampilan publik untuk security melihat izin yang telah disetujui
  • 🎨 Responsive Design: Antarmuka modern dengan Tailwind CSS

Persyaratan Sistem

  • PHP >= 8.2
  • Composer
  • Node.js & NPM
  • MySQL/MariaDB
  • Git

Cara Instalasi

1. Clone Repository

git clone https://github.com/ryuu-rafa/telkom_security2.git
cd telkom_security2

2. Install Dependencies

# Install PHP dependencies
composer install

# Install Node.js dependencies
npm install

3. Konfigurasi Environment

# Salin file .env.example
cp .env.example .env

# Generate application key
php artisan key:generate

4. Konfigurasi Database

Edit file .env dan sesuaikan dengan konfigurasi database Anda:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=telkom_security2
DB_USERNAME=root
DB_PASSWORD=password_anda

5. Buat Database

# Buat database MySQL
mysql -u root -p -e "CREATE DATABASE telkom_security2;"

6. Migrasi dan Seeding Database

php artisan migrate:fresh --seed

7. Build Assets

npm run build

8. Jalankan Server Development

php artisan serve

Aplikasi akan berjalan di: http://127.0.0.1:8000

Akun Default

Setelah seeding, Anda dapat login dengan akun berikut:

Admin

  • Email: admin1@telkom.sch.id
  • Password: password

Guru

  • Email: budi.guru@telkom.sch.id
  • Password: password

Siswa

  • Email: ahmad.siswa@telkom.sch.id
  • Password: password

Struktur Role

1. Admin

  • Mengelola semua pengguna (Create, Read, Update, Delete)
  • Dapat membuat user baru dengan role Admin, Guru, atau Siswa
  • Akses penuh ke sistem

2. Guru

  • Melihat semua izin siswa
  • Menyetujui atau menolak izin siswa
  • Melihat informasi lengkap setiap izin

3. Siswa

  • Membuat izin baru dengan keterangan dan waktu
  • Mengedit izin yang masih berstatus "pending"
  • Melihat status semua izin yang telah dibuat

4. Public (Security)

  • Akses tanpa login ke /security-view
  • Melihat daftar izin yang telah disetujui

Endpoint Penting

URL Deskripsi Akses
/ Halaman login Public
/security-view Tampilan publik izin yang disetujui Public
/siswa/dashboard Dashboard siswa Siswa
/guru/dashboard Dashboard guru Guru
/admin/dashboard Dashboard admin Admin
/admin/users Manajemen pengguna Admin

Teknologi yang Digunakan

  • Backend: Laravel 12
  • Frontend: Tailwind CSS 4
  • Database: MySQL/MariaDB
  • Build Tool: Vite
  • Authentication: Laravel Built-in Auth

Development

Untuk development dengan hot reload:

# Terminal 1 - Laravel server
php artisan serve

# Terminal 2 - Vite dev server
npm run dev

Troubleshooting

Error: Database tidak ditemukan

# Pastikan database sudah dibuat
mysql -u root -p -e "CREATE DATABASE telkom_security2;"

Error: SQLSTATE connection refused

  • Pastikan MySQL/MariaDB sudah running
  • Cek konfigurasi di file .env

Assets tidak muncul

# Build ulang assets
npm run build

# Atau jalankan dev mode
npm run dev

Lisensi

Aplikasi ini menggunakan framework Laravel yang berlisensi MIT.

Code of Conduct

In order to ensure that the Laravel community is welcoming to all, please review and abide by the Code of Conduct.

Security Vulnerabilities

If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via taylor@laravel.com. All security vulnerabilities will be promptly addressed.

License

The Laravel framework is open-sourced software licensed under the MIT license.

About

Project kelas 11 semester 1

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages