wizdam / wizdam-editorial
Wizdam Editorial - Modern Publisher Platform for Journal Management Framework Workflow and Publishing
Requires
- php: ^8.4
- ext-curl: *
- ext-gd: *
- ext-json: *
- ext-mbstring: *
- ext-xml: *
- ext-zip: *
- adodb/adodb-php: ^5.22
- chillerlan/php-qrcode: ^4.4
- ezyang/htmlpurifier: ^4.19
- guzzlehttp/guzzle: ^7.0
- midtrans/midtrans-php: ^2.6
- mpdf/mpdf: ^8.0
- setasign/fpdi: ^2.0
- simplepie/simplepie: ^1.9
- smarty/smarty: ^5.8
- symfony/polyfill-mbstring: ^1.36
- symfony/var-dumper: ^6.0
- vlucas/phpdotenv: ^5.5
- wikimedia/less.php: ^5.5
- wizdamdebug/debug-toolbar: @dev
- xendit/xendit-php: ^2.0
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.0
- squizlabs/php_codesniffer: ^3.7
This package is auto-updated.
Last update: 2026-04-25 16:12:42 UTC
README
Platform Manajemen Editorial & Penerbitan Ilmiah Modern
Wizdam Editorial adalah platform open‑source untuk manajemen editorial dan penerbitan ilmiah yang dibangun dengan arsitektur Publisher‑Centric modern, fleksibel, dan skalabel.
“Empowering Publishers with Modern Technology”
📄 Submission → 👀 Review → 🏭 Production → 📡 Publish
📖 Tentang Wizdam Editorial
Wizdam Editorial 1.0 merupakan hasil refactoring dan modernisasi total dari basis kode OJS 2.x, dirancang ulang dengan prinsip‑prinsip pengembangan perangkat lunak terkini. Platform ini mengubah paradigma dari Journal‑Centric menjadi Publisher‑Centric, memungkinkan satu instalasi menaungi banyak penerbit (multi‑publisher) – bukan hanya banyak jurnal.
Dibangun di atas fondasi Wizdam Kernel, platform ini memisahkan secara jelas antara Core Engine, Modules, dan Library Eksternal, serta mengadopsi standar industri seperti Composer, PSR‑4 Autoloading, dan konfigurasi berbasis environment variable (.env). Hasilnya adalah sistem yang ringkas, mudah dipahami, dan siap produksi.
✨ Mengapa Wizdam Editorial?
| 🔧 Aspek | 🟡 OJS 2.x (Legacy) | 🟢 Wizdam 1.0 (Modern) |
|---|---|---|
| Struktur | lib/pkp/, lib/ojs/, classes/ |
Flat & Modular: core/Kernel/, core/Modules/, app/ |
| Paradigma | Journal‑Centric (Journal, Site) |
Publisher‑Centric (Press, CorePublisher) |
| Dependencies | Manual includes | Composer + PSR‑4 Autoloading |
| Konfigurasi | config.inc.php saja |
.env + config bridge |
| Library | Nested vendor/ |
Flat structure di core/Library/ |
| PHP | ≤ 7.x | ≥ 8.4 (native type‑safe) |
🚀 Quick Start
🔧 Prasyarat
| Perangkat Lunak | Versi Minimum |
|---|---|
| PHP | 8.1+ (direkomendasikan 8.4) |
| Database | MySQL 5.7+ / MariaDB 10.3+ / PostgreSQL 11+ |
| Composer | 2.x |
| Node.js | 18+ (untuk kompilasi asset) |
| Web Server | Apache / Nginx dengan mod_rewrite |
💻 Instalasi Development
# 1. Clone repository git clone https://github.com/mokesano/wizdam-editorial.git cd wizdam-editorial # 2. Install dependencies PHP composer install # 3. Install dependencies Node (opsional, untuk kompilasi asset) npm install # 4. Setup environment cp .env.example .env # ✏️ Edit file .env sesuai konfigurasi Anda # 5. Buat database mysql -u root -p -e "CREATE DATABASE wizdam CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" # 6. Jalankan installer php scripts/install.php # 7. Start development server php -S localhost:8000 -t public/ # 🌐 Akses aplikasi di http://localhost:8000
🌍 Instalasi Production (Shared Hosting)
- Upload semua file via FTP/SFTP
- Copy
.env.examplemenjadi.envdan edit konfigurasi - Pastikan folder
storage/danpublic/writable - Akses domain Anda untuk menjalankan installer web‑based
📘 Panduan lengkap: docs/INSTALLATION.md
🧩 Fitur Utama
📋 Fitur Editorial
| Fitur | Deskripsi |
|---|---|
| 🏢 Multi‑Publisher | Satu instalasi, banyak penerbit — bukan hanya banyak jurnal |
| 🔄 Workflow Fleksibel | Submission → Review → Production → Publish |
| 👥 Peer Review | Blind, Double‑Blind, dan Open Review |
| 👤 User & Role | Manajemen pengguna dengan permission granular |
| 🔔 Notifikasi | Email dan in‑app notification |
| 📊 Statistik | Dashboard analytics & reporting |
| 🔍 Search | Full‑text search & indexing |
⚙️ Fitur Teknis
| Fitur | Deskripsi |
|---|---|
| 📦 PSR‑4 Autoloading | Composer‑based, struktur namespace modern |
| 🌐 REST API | Integrasi eksternal via API endpoint |
| 🧩 Plugin System | Arsitektur plugin modular |
| 🎨 Template Engine | Smarty 5+ untuk tampilan |
| 🌍 Multi‑Language | Dukungan penuh via locale files |
| 🗄️ Database Migration | Sistem migrasi database terintegrasi |
| ⚡ Caching | File, database, dan Redis‑ready |
🔗 Integrasi
| Integrasi | Deskripsi |
|---|---|
| 💳 Payment Gateway | Midtrans, Xendit |
| 🆔 ORCID | Integrasi identitas peneliti |
| 📄 CrossRef DOI | Registrasi DOI otomatis |
| 🎓 Google Scholar | Optimasi indexing |
| 📡 SWORD | Protocol deposit |
| 🌾 OAI‑PMH | Metadata harvesting |
🏗️ Sekilas Arsitektur
Wizdam Editorial mengadopsi arsitektur layered modular yang memisahkan core engine, business logic, dan presentation layer:
Core Kernel → App Domain → Pages / API
( Framework ) ( Business ) ( Presentation )
| Layer | Deskripsi |
|---|---|
| Core Kernel | Inti framework: CoreApplication, CoreRouter, dll. |
| Core Modules | Modul fungsional: Database, Form, User, Auth, dll. |
| App Domain | Logika bisnis: Submission, Publisher, Review, dll. |
| App Pages | Request handler untuk halaman web |
| Plugins | Sistem plugin yang dapat diperluas |
| Themes | Template Smarty untuk kustomisasi tampilan |
🧠 Detail lengkap: docs/ARCHITECTURE.md
💻 Contoh Penggunaan
<?php use Wizdam\Core\CoreApplication; use Wizdam\App\Domain\publisher\AppPublisher; use Wizdam\App\Domain\submission\AppSubmission; // Inisialisasi aplikasi $app = CoreApplication::getInstance(); // Ambil data publisher $publisher = AppPublisher::getById(1); echo "Penerbit: {$publisher->getName()}\n"; // Buat submission baru $submission = new AppSubmission(); $submission->setTitle('Judul Artikel'); $submission->setPublisherId(1); $submission->save(); echo "✅ Submission berhasil dibuat dengan ID: {$submission->getId()}";
🧪 Development & Testing
# Unit tests vendor/bin/phpunit # Integration tests vendor/bin/phpunit --testsuite=integration # Code style check (PSR-12) vendor/bin/phpcs --standard=PSR12 core/ app/ # Static analysis vendor/bin/phpstan analyse --level max core/ app/ # Compile assets npm run build # Watch mode untuk development npm run dev
📚 Dokumentasi
Dokumentasi lengkap tersedia di folder docs/:
| Dokumen | Deskripsi |
|---|---|
| INSTALLATION.md | Panduan instalasi lengkap (dev & production) |
| ARCHITECTURE.md | Detail arsitektur & struktur direktori |
| MIGRATION.md | Migrasi dari OJS 2.x ke Wizdam 1.0 |
| CONTRIBUTING.md | Panduan kontribusi developer |
| API.md | REST API documentation |
| PLUGINS.md | Pengembangan plugin |
| THEMING.md | Panduan tema & template |
| DEPLOYMENT.md | Best practices deployment |
| SECURITY.md | Keamanan & hardening |
🤝 Kontribusi
Kami menyambut kontribusi dari komunitas! Lihat CONTRIBUTING.md untuk:
- Cara setup development environment
- Coding standards (PSR‑12)
- Proses pull request
- Bug reporting guidelines
- Feature request process
Code of Conduct
Proyek ini mengikuti Code of Conduct untuk memastikan lingkungan yang inklusif dan ramah.
🔒 Keamanan
Keamanan adalah prioritas utama. Jangan mengumbar kerentanan secara publik.
- Pelaporan: Kirim laporan kerentanan ke security@sangia.org
- Respons: Pengelola utama akan merespons dalam 48 jam
- Advisori: Dipublikasikan di GitHub Security Advisories
Detail lengkap: SECURITY.md
📄 Lisensi
Wizdam Editorial dilisensikan di bawah GNU General Public License v3.0 (GPL‑3.0). Lihat LICENSE untuk teks lengkap.
| Izin | Ketentuan |
|---|---|
| ✅ Bebas digunakan (komersial & non‑komersial) | ⚠️ Derivative work harus pakai lisensi yang sama (copyleft) |
| ✅ Bebas dimodifikasi & didistribusikan | ⚠️ Harus menyertakan kode sumber jika didistribusikan |
🌐 Tautan Penting
| 🔗 Tautan | Deskripsi |
|---|---|
| Website Resmi | Halaman utama Wizdam Platform |
| Dokumentasi | Dokumentasi online |
| Issue Tracker | Laporkan bug atau usulkan fitur |
| Community Forum | Diskusi komunitas |
| Packagist | Paket Composer |
| Demo Jurnal | Contoh jurnal yang menggunakan Wizdam |
🙏 Ucapan Terima Kasih
Wizdam Editorial dibangun di atas fondasi yang diletakkan oleh:
| 🏷️ Atribusi | 🔗 Referensi |
|---|---|
| Public Knowledge Project (PKP) | OJS 2.x — sistem manajemen jurnal open‑source |
| Sangia Publishing House | journals.sangia.org |
| Komunitas Open Source | Berbagai library dan framework PHP modern |
| Lead Developer | Rochmady (mokesano) |
| Tim Wizdam | Wizdam Archon |
⭐ Kontributor
Terima kasih kepada semua kontributor yang telah membantu mengembangkan Wizdam Editorial!
Dibangun dengan ❤️ untuk memajukan penerbitan ilmiah Indonesia dan dunia
© 2025–2026 Rochmady & Wizdam Editorial Team. Dilisensikan di bawah GPL‑3.0.