Laporan Pengembangan Sistem & Timeline
Timeline Pengembangan Portal AAI-PN
- Tahap 1 (Inisiasi): Penyiapan struktur arsitektur Domain-Driven Design (DDD) dan integrasi template TALL stack.
- Tahap 2 (Keanggotaan): Pembuatan fitur registrasi anggota, validasi form berjenjang, dan dasbor portal pengguna mandiri.
- Tahap 3 (Sistem Inti): Pengalihan dari panel admin bawaan (Filament) menuju kustomisasi enterprise (Livewire Executive Dashboard), serta pengelolaan hirarki Menu dan Konten Dinamis (CMS).
- Tahap 4 (Autentikasi Lanjut): Penambahan fitur Google SSO (Single Sign-On) dan integrasi tombol pendaftaran cepat tanpa password.
- Tahap 5 (Otomatisasi & Deployment): Implementasi CI/CD menggunakan GitHub Actions dengan metode kompresi lokal dan ekstraksi server (menghindari limitasi rsync di cPanel) untuk update yang mulus dan terjamin amannya file .env & storage.
Dokumentasi Teknis Utama (README)
# Asosiasi Arsiparis Indonesia - Pengurus Nasional (AAI-PN)Sistem Informasi Terpadu dan Portal Resmi Pengurus Nasional Asosiasi Arsiparis Indonesia (AAI-PN). Aplikasi ini dibangun dengan menggunakan framework Laravel, Livewire, dan Tailwind CSS.
Fitur Utama
- Portal Publik & CMS: Berita, artikel, agenda, galeri, FAQ, dan manajemen konten (halaman dinamis).
- Manajemen Keanggotaan & SSO: Pendaftaran anggota baru dengan dukungan Login/Registrasi via Google (Single Sign-On), verifikasi berjenjang, dan penerbitan Kartu Tanda Anggota (KTA) digital.
- Sertifikasi LSP: Pengelolaan skema sertifikasi, pendaftaran uji kompetensi, penilaian asesor, dan penerbitan sertifikat profesi.
- Manajemen Event & Diklat: Pendaftaran acara, seminar, diklat, pencatatan kehadiran (QR Code), dan penerbitan e-sertifikat kegiatan.
- E-Voting & Pemilu: Sistem pemilihan ketua dan pengurus yang aman dan transparan secara online.
- E-Office & Tata Naskah: Penomoran otomatis dan pengelolaan surat masuk serta surat keluar secara digital.
- Keuangan & Iuran: Pembayaran iuran keanggotaan dan verifikasi bukti bayar.
Persyaratan Sistem
- PHP 8.2 atau lebih baru
- Composer
- Node.js (v20) & NPM
- Database (MySQL/PostgreSQL/SQLite)
Panduan Instalasi (Development Lokal)
-
Clone Repository
git clone https://github.com/amd890/aai-pn.git cd aai-pn -
Install Dependencies
composer install npm install -
Konfigurasi Environment & Google SSO Copy file
.env.examplemenjadi.envlalu sesuaikan konfigurasi database.cp .env.example .env php artisan key:generateUntuk mengaktifkan fitur Login dengan Google, pastikan Anda menambahkan baris berikut di file
.env:GOOGLE_CLIENT_ID="ISI_DENGAN_CLIENT_ID_ANDA.apps.googleusercontent.com" GOOGLE_CLIENT_SECRET="ISI_DENGAN_SECRET_ANDA" GOOGLE_REDIRECT_URI="http://localhost:8000/auth/google/callback" # Sesuaikan dengan URL lokal Anda -
Migrasi & Seeding Database Aplikasi dilengkapi dengan dummy data dan konfigurasi dasar (Roles, Permissions, Menu) menggunakan seeder.
php artisan migrate:fresh --seed -
Compile Assets (Tailwind & Vite)
npm run build # atau untuk auto-reload saat development: npm run dev -
Jalankan Server
php artisan serve
Otomatisasi Deployment (CI/CD GitHub Actions)
Repositori ini telah dikonfigurasi untuk melakukan Continuous Deployment (CD) secara otomatis ke server cPanel (dev.arsiparis.org) setiap kali ada push atau merge ke branch main.
Mekanisme Deployment:
- GitHub Actions akan mem-build aset lokal dan melakukan kompresi (
tar.gz) tanpa mengikutsertakan.envmaupunstorage/. - File arsip dikirim secara aman menggunakan SCP.
- Ekstraksi dan pembersihan cache dieksekusi secara jarak jauh via SSH.
Catatan: Pastikan rahasia (Secrets) SSH_HOST, SSH_PORT, SSH_USERNAME, dan SSH_PRIVATE_KEY sudah diatur di menu Settings > Secrets > Actions repositori GitHub.
Kredensial Default (Testing / Seeder)
Semua akun hasil seeding di bawah ini menggunakan kata sandi yang sama:
🔑 Password:
password
- Sistem & Admin:
superadmin@aai.or.id(Super Admin - Akses penuh)admin@aai.or.id(Administrator Web/Portal)
- Pengurus Pusat:
ketum@aai.or.id(Ketua Umum)sekjen@aai.or.id(Sekretaris Jenderal)bendahara@aai.or.id(Bendahara)
- Anggota Umum:
fauzi.arsip@gmail.combudi.santoso@bca.co.id
Lisensi
Hak Cipta © Pengurus Nasional Asosiasi Arsiparis Indonesia. All rights reserved.