84 lines
1.5 KiB
Markdown
84 lines
1.5 KiB
Markdown
# Panduan Kontribusi
|
|
|
|
Terima kasih telah tertarik berkontribusi pada proyek **Persegi**!
|
|
|
|
---
|
|
|
|
## Prasyarat
|
|
|
|
- PHP >= 8.4
|
|
- Composer
|
|
- MySQL / MariaDB
|
|
- Node.js (opsional, untuk asset)
|
|
|
|
---
|
|
|
|
## Setup Lokal
|
|
|
|
```bash
|
|
git clone <repo-url>
|
|
cd persegi
|
|
|
|
composer install
|
|
cp .env.example .env
|
|
php artisan key:generate
|
|
```
|
|
|
|
Isi konfigurasi database di `.env`:
|
|
```
|
|
DB_DATABASE=persegi
|
|
DB_USERNAME=root
|
|
DB_PASSWORD=
|
|
```
|
|
|
|
Lalu jalankan:
|
|
```bash
|
|
php artisan migrate --seed
|
|
php artisan shield:generate --panel=admin --all -n
|
|
php artisan db:seed --class=PermissionSeeder --force
|
|
php artisan shield:super-admin --user=1
|
|
php artisan serve
|
|
```
|
|
|
|
Akses admin panel: `http://localhost:8000/dashboard`
|
|
|
|
Untuk notifikasi & queue:
|
|
```bash
|
|
php artisan queue:work
|
|
```
|
|
|
|
---
|
|
|
|
## Alur Kontribusi
|
|
|
|
1. Fork repository ini
|
|
2. Buat branch baru: `git checkout -b feat/nama-fitur`
|
|
3. Lakukan perubahan
|
|
4. Commit dengan pesan yang jelas (gunakan bahasa Indonesia):
|
|
```
|
|
feat: tambah fitur X
|
|
fix: perbaiki bug Y
|
|
docs: update dokumentasi Z
|
|
```
|
|
5. Push ke fork kamu: `git push origin feat/nama-fitur`
|
|
6. Buat Pull Request ke branch `master`
|
|
|
|
---
|
|
|
|
## Konvensi Kode
|
|
|
|
- Ikuti struktur yang sudah ada: Resource → `app/Filament/Resources/{Nama}/`
|
|
- Pisahkan Form, Table, dan Pages ke file terpisah
|
|
- Gunakan Observer untuk side-effect (log, notifikasi)
|
|
- Semua aksi penting wajib dicatat ke `activity_logs`
|
|
- Jangan hardcode permission — gunakan Filament Shield
|
|
|
|
---
|
|
|
|
## Melaporkan Bug
|
|
|
|
Buka issue dengan menyertakan:
|
|
- Langkah untuk mereproduksi
|
|
- Pesan error lengkap
|
|
- Role user yang mengalami bug
|