Download the PHP package andretmblkk/dfdgenerator without Composer
On this page you can find all versions of the php package andretmblkk/dfdgenerator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download andretmblkk/dfdgenerator
More information about andretmblkk/dfdgenerator
Files in andretmblkk/dfdgenerator
Package dfdgenerator
Short Description Generate Data Flow Diagram documentation automatically from Laravel routes, controllers, models, and database access.
License MIT
Homepage https://github.com/Andretmblkk/DFDgenerator
Informations about the package dfdgenerator
Laravel DFD Generator
Laravel DFD Generator adalah package Laravel untuk membuat Data Flow Diagram (DFD) otomatis dari aplikasi Laravel. Package ini membaca route, controller action, pemakaian model Eloquent, dan akses database, lalu menampilkan hasilnya lewat live web viewer /dfd atau export static HTML/SVG/JSON/Mermaid.
Project ini dibuat oleh Andre Tumbelaka.
Fitur
- Auto-scan route Laravel dan controller action.
- Parse source PHP memakai
nikic/php-parser. - Deteksi proses bisnis dari route/controller.
- Deteksi model Eloquent dan table database.
- Generate DFD Level 0 sampai Level 3.
- Live web viewer modern di
/dfdtanpa sambung JSON manual. - Dark UI, sidebar hierarchy, toolbar zoom/pan, minimap, dan export.
- CSS/JS viewer diload otomatis lewat route asset package.
- Export static HTML viewer, SVG, JSON, dan Mermaid.
- Artisan command:
php artisan dfd:generate.
Requirement
- PHP 8.2 atau lebih baru.
- Laravel 10, 11, atau 12.
- Composer.
Installation
Install langsung lewat Composer:
Laravel akan auto-discover service provider package ini. Setelah install, route /dfd langsung tersedia selama config route package aktif.
Kalau auto-discovery dimatikan, daftarkan provider manual di config/app.php:
Update package
Kalau package sudah pernah terinstall dan ingin mengambil versi terbaru:
Publish config
Publish config bersifat opsional. Jalankan ini hanya kalau ingin mengubah prefix route, middleware, output path, semantic groups, atau setting lain.
File yang dibuat:
Publish assets
Live viewer /dfd langsung bekerja setelah install karena package menyajikan CSS/JS lewat route asset internal:
Artinya user tidak wajib menjalankan vendor:publish agar UI tampil modern. Kalau ingin menyalin asset package ke public path Laravel standar, jalankan:
File akan dipublish ke:
Usage: live viewer
Jalankan aplikasi Laravel:
Buka DFD viewer:
Package akan scan route/controller aplikasi saat halaman /dfd dibuka, lalu render viewer langsung. Tidak perlu generate JSON atau menghubungkan frontend manual.
Viewer route mode memakai asset URL absolut dari Laravel asset(), sehingga /dfd tetap benar meskipun dibuka tanpa trailing slash. CSS dan JS akan diload dari /dfd/assets/..., bukan dari /assets/....
Konfigurasi route viewer
Default route:
Ubah prefix lewat .env:
Kalau ingin disable viewer:
Kalau prefix diubah, asset viewer ikut menyesuaikan. Contoh:
Viewer:
Asset:
Konfigurasi nama sistem
Tambahkan ke .env aplikasi Laravel:
Export static HTML/SVG/JSON
Kalau tetap butuh file static:
Default output:
File yang dihasilkan:
Static HTML mode memakai asset relatif:
Karena itu storage/dfd/index.html bisa dibuka sebagai file static selama folder assets tetap berada di sebelah index.html.
Custom output folder:
Buka:
Kalau output diarahkan ke public/dfd, viewer static juga bisa dibuka lewat web server:
Export Mermaid legacy
Export JSON legacy:
Debug
Kalau command gagal dan butuh detail error:
Cara kerja singkat
- Package membaca route Laravel.
- Action controller diparse dari source code.
- Pemakaian model/table dideteksi.
- Proses bisnis dikelompokkan berdasarkan config semantic groups.
- DFD Level 0 sampai Level 3 dibangun.
- Viewer route mode menampilkan diagram langsung di
/dfd. - Static mode menulis
index.html, SVG, JSON, dan asset viewer ke output folder.
Development package
Clone repository:
Install dependency:
Jalankan test:
Atau langsung:
Regenerate autoload setelah mengubah class:
Struktur project
Catatan penting
Package ini menganalisis struktur aplikasi berdasarkan route, controller, model, dan pemakaian database yang bisa dibaca secara statis. Kalau logic aplikasi terlalu dinamis, misalnya route/controller dibuat saat runtime, hasil diagram bisa kurang lengkap.
Untuk live viewer, pastikan route package tidak diblokir middleware aplikasi. Secara default package memakai middleware web.
License
MIT
All versions of dfdgenerator with dependencies
illuminate/console Version ^10.0|^11.0|^12.0
illuminate/support Version ^10.0|^11.0|^12.0
nikic/php-parser Version ^5.7