diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..d15816f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,49 @@ +name: "\U0001F41E Laporan Bug" +description: Laporkan bug atau perilaku tak terduga +title: "[Bug] " +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Terima kasih sudah melaporkan! Isi sedetail mungkin. + Untuk masalah **keamanan**, gunakan tab Security (lihat SECURITY.md), **jangan** issue publik. + - type: textarea + id: deskripsi + attributes: + label: Deskripsi bug + description: Apa yang terjadi? + validations: + required: true + - type: textarea + id: langkah + attributes: + label: Langkah reproduksi + placeholder: | + 1. Buka '...' + 2. Klik '...' + 3. Terjadi error + validations: + required: true + - type: textarea + id: harapan + attributes: + label: Perilaku yang diharapkan + validations: + required: true + - type: input + id: versi + attributes: + label: Versi / commit + placeholder: "0.5.0 / SHA" + - type: dropdown + id: lingkungan + attributes: + label: Cara menjalankan + options: ["Docker", "Manual (Node.js)", "PM2", "Lainnya"] + validations: + required: true + - type: textarea + id: log + attributes: + label: Log / screenshot (opsional) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..b43b07c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: true +contact_links: + - name: "\U0001F4DA Wiki & Dokumentasi" + url: https://github.com/oxpoe/open-isp/wiki + about: Panduan instalasi, konfigurasi, FAQ, dan troubleshooting + - name: "\U0001F4AC Tanya Jawab" + url: https://github.com/oxpoe/open-isp/issues + about: Ajukan pertanyaan umum seputar OPEN-ISP diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..edf1d1f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,26 @@ +name: "\u2728 Permintaan Fitur" +description: Usulkan ide atau fitur baru +title: "[Fitur] " +labels: ["enhancement"] +body: + - type: textarea + id: masalah + attributes: + label: Masalah / kebutuhan + description: Fitur ini menyelesaikan masalah apa? + validations: + required: true + - type: textarea + id: solusi + attributes: + label: Usulan solusi + validations: + required: true + - type: textarea + id: alternatif + attributes: + label: Alternatif yang dipertimbangkan (opsional) + - type: textarea + id: konteks + attributes: + label: Konteks tambahan (opsional) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..ec4b6cf --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,21 @@ +## Deskripsi + + + +## Jenis Perubahan + +- [ ] Bug fix +- [ ] Fitur baru +- [ ] Dokumentasi +- [ ] Refactor/perbaikan + +## Cara Menguji + + + +## Checklist + +- [ ] Sudah diuji lokal (Docker / `npm start`) +- [ ] Tidak menyertakan rahasia (`settings.json`, `.env`, `database/`, `uploads/`) +- [ ] Mengikuti gaya kode & struktur proyek +- [ ] Setuju rilis di bawah lisensi ISC diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..23e530d --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,25 @@ +# Changelog + +Format mengikuti [Keep a Changelog](https://keepachangelog.com/) dan [Semantic Versioning](https://semver.org/). + +## [0.5.0] — 2026-10-09 — "pickle-lime" + +Rilis open-source perdana. + +### Ditambahkan +- Billing otomatis, isolir otomatis, pengingat WhatsApp, jam kalong, FUP, sinkron pemakaian. +- Multi-router MikroTik (PPPoE & hotspot), voucher hotspot, backup konfigurasi. +- Multi-vendor OLT (Hioso/HSGQ via SNMP; ZTE/Huawei via CLI) + `scripts/olt-probe.js`. +- TR-069: ACS bawaan (built-in) + integrasi GenieACS. +- RADIUS (PAP/CHAP) untuk PPPoE/hotspot. +- Peta jaringan (Leaflet) admin & teknisi, ODP, jalur kabel. +- Portal: admin, kasir, teknisi, kolektor, pelanggan (PWA, offline). +- Notifikasi WhatsApp (GoWA/Baileys) & Telegram. +- Pembayaran QRIS + webhook, kode unik, gateway opsional. +- Antarmuka bilingual Indonesia/English. +- Docker (Dockerfile + docker-compose), data demo (`scripts/seed-demo.js`). +- Lisensi ISC + Wiki dokumentasi. + +### Kredit +- Base kode & repo: [alijayanet/billing-rtrw](https://github.com/alijayanet/billing-rtrw) oleh **Alijaya Net**. +- Dikembangkan menjadi OPEN-ISP oleh [oxpoe](https://github.com/oxpoe). diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..e5bdaef --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,35 @@ +# Kode Etik Kontributor + +## Janji Kami + +Demi mendorong lingkungan yang terbuka dan ramah, kami sebagai kontributor dan pengelola berjanji menjadikan partisipasi dalam proyek ini bebas dari pelecehan bagi semua orang, tanpa memandang usia, ukuran tubuh, disabilitas, etnis, identitas dan ekspresi gender, tingkat pengalaman, kebangsaan, penampilan, ras, agama, atau identitas dan orientasi seksual. + +## Standar Kami + +Contoh perilaku yang membangun: + +- Menggunakan bahasa yang ramah dan inklusif. +- Menghormati perbedaan pendapat dan pengalaman. +- Menerima kritik konstruktif dengan baik. +- Fokus pada apa yang terbaik bagi komunitas. + +Contoh perilaku yang tidak dapat diterima: + +- Komentar yang melecehkan, menghina, atau merendahkan. +- Pelecehan publik maupun pribadi. +- Mempublikasikan informasi pribadi orang lain tanpa izin. +- Perilaku lain yang wajar dianggap tidak pantas dalam lingkungan profesional. + +## Tanggung Jawab Pengelola + +Pengelola berhak menghapus, mengubah, atau menolak komentar, commit, kode, dan kontribusi yang tidak sesuai dengan Kode Etik ini, serta berhak memblokir kontributor yang berperilaku tidak pantas. + +## Cakupan + +Kode Etik ini berlaku di seluruh ruang proyek (repositori, issues, PR) dan saat seseorang mewakili proyek di ruang publik. + +## Penegakan + +Perilaku yang tidak dapat diterima dapat dilaporkan kepada pengelola melalui **GitHub** (buat issue privat/mention `@oxpoe`). Semua laporan akan ditinjau dan ditangani secara adil dan rahasia. + +Teks ini diadaptasi dari [Contributor Covenant](https://www.contributor-covenant.org), versi 2.1. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..7662d4c --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,36 @@ +# Kontribusi ke OPEN-ISP + +Terima kasih sudah tertarik berkontribusi! 🎉 + +## Cara Berkontribusi + +1. **Fork** repositori ini. +2. Buat **branch** baru: `git checkout -b fitur/nama-fitur`. +3. Lakukan perubahan + uji. +4. **Commit**: `git commit -m "feat: deskripsi singkat"`. +5. **Push** branch & buka **Pull Request**. + +## Aturan + +- Ikuti gaya kode & struktur yang ada (Express/EJS, service di `services/`, route di `routes/`). +- Bahasa commit/PR boleh Indonesia atau Inggris. +- **Jangan pernah** meng-commit `settings.json`, `.env`, `database/`, `logs/`, `uploads/`, `baileys/`, atau berkas berisi data pelanggan/rahasia. +- Untuk perubahan besar, buka **Issue** dulu untuk didiskusikan. +- Sertakan cara menguji di deskripsi PR. + +## Uji Lokal + +```bash +docker compose up -d --build +# atau +npm ci --omit=dev && npm start +node scripts/seed-demo.js # data demo +``` + +## Melaporkan Bug & Fitur + +Gunakan template di tab **Issues**. Untuk celah keamanan, lihat [SECURITY.md](SECURITY.md). + +## Lisensi Kontribusi + +Dengan berkontribusi, Anda menyetujui kontribusi Anda dirilis di bawah lisensi **[ISC](LICENSE)** proyek ini. diff --git a/README.md b/README.md index 4e38192..e3d0b63 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@
-
+
@@ -11,12 +11,15 @@
-
+
+
+
+
Dashboard Admin![]() |
+Data Pelanggan![]() |
+
Tagihan & Pembayaran![]() |
+OLT (PON)![]() |
+
Portal Pelanggan (PWA)![]() |
+Tagihan Pelanggan![]() |
+