Skip to content

WARNING

kamu sedang menjelajahi dokumentasi untuk versi Generator yang lama nih. Tolong pertimbangkan untuk memperbarui proyek kamu ke versi Generator 0.3.x yaa.

Fitur ​

Versi Sederhana ​

Versi Lengkap ​

  • CRUD Generator
  • Menu Sidebar yang dapat dikonfigurasi
  • CRUD User
  • Hak akses (Spatie Permission)
  • Otentikasi (Laravel Fortify)
    • Masuk
    • Daftar
    • Lupa Kata Sandi
    • Otentikasi 2FA
    • Pembaruan informasi profil

Perintah Tersedia ​

Instalasi Generator ​

Instalasi varian Generator: Sederhana (Simple version) / Lengkap (Full version)

Untuk versi sederhana

sh
php artisan generator:install simple

Untuk versi lengkap

sh
php artisan generator:install full

DANGER

Perintah ini akan menimpa beberapa berkas, jadi kamu harus berhati-hati saat menjalankan perintah ini dan hindari menjalankannya lebih dari sekali.

Tetapkan menu Sidebar ​

Tetapkan menu Sidebar menjadi kode .blade (statis) atau gunakan daftar dari konfigurasi (dinamis)

Tempat konfigurasi menu Sidebar berada di config/generator.php

sh
php artisan generator:sidebar dynamic

Saat menggunakan menu Sidebar statis, kamu bebas untuk mengubah menu Sidebar yang berada di resources/views/layouts/sidebar.blade.php

sh
php artisan generator:sidebar static

INFO

Setelah kamu membuat modul baru menggunakan Generator, Sidebar akan otomatis kembali ke dinamis. Tapi tenang kamu dapat mengubahnya kembali seperti semula.

Utilitas/Helper ​

Helper ​

Periksa menu aktif pada Sidebar ​

php
is_active_menu(string|array $menu): boolean;

Kelas Utilitas ​

Semua fungsi utilitas yang mungkin kamu butuhkan, tersedia berada di App\Generators\GeneratorUtils

php
use App\Generators\GeneratorUtils;

/**
 * Dapatkan template/berkas.
*/
public static function getTemplate(string $path): string;

/**
* Dapatkan berkas yang telah dibuat.
*/
public static function getPublishedStub(string $path): string;

/**
* Periksa folder jika tidak ada, lalu buat folder.
*/
public static function checkFolder(string $path): void;

/**
* Ubah teks ke singular pascal case.
*/
public static function singularPascalCase(string $string): string;

/**
* Ubah teks ke singular pascal case.
*/
public static function pascalCase(string $string): string;

/**
* Ubah teks ke plural pascal case.
*/
public static function pluralPascalCase(string $string): string;

/**
* Ubah teks ke plural snake case.
*/
public static function pluralSnakeCase(string $string): string;

/**
* Ubah teks ke singular snake case.
*/
public static function singularSnakeCase(string $string): string;

/**
* Ubah teks ke plural pascal case.
*/
public static function pluralCamelCase(string $string): string;

/**
* Ubah teks ke singular pascal case.
*/
public static function singularCamelCase(string $string): string;

/**
* Ubah teks ke plural, kebab case, dan huruf kecil.
*/
public static function pluralKebabCase(string $string): string;

/**
* Ubah teks ke kebab case, dan huruf kecil.
*/
public static function kebabCase(string $string): string;

/**
* Ubah teks ke singular, kebab case, dan huruf kecil.
*/
public static function singularKebabCase(string $string): string;

/**
* Ubah teks ke singular, hapus karakter khusus, dan huruf kecil.
*/
public static function cleanSingularLowerCase(string $string): string;

/**
* Hapus karakter khusus, dan huruf kecil.
*/
public static function cleanLowerCase(string $string): string;

/**
* Ubah teks ke plural, hapus karakter khusus, dan huruf besar setiap huruf pertama.
*/
public static function cleanPluralUcWords(string $string): string;

/**
* Ubah teks ke singular, hapus karakter khusus, dan huruf besar setiap huruf pertama.
*/
public static function cleanSingularUcWords(string $string): string;

/**
* Hapus karakter khusus, dan huruf besar setiap huruf pertama.
*/
public static function cleanUcWords(string $string): string;

/**
* Ubah teks ke plural, hapus karakter khusus, dan huruf kecil.
*/
public static function cleanPluralLowerCase(string $string): string;

/**
* Dapatkan 1 kolom setelah id berada di tabel.
*/
public static function getColumnAfterId(string $table): string;

/**
* Pilih id dan kolom setelah id berada di tabel.
*/
public static function selectColumnAfterIdAndIdItself(string $table): string;

/**
* Dapatkan lokasi model atau path jika mengandung '/'.
*/
public static function getModelLocation(string $model): string;

/**
* Converts camelCase string to have spaces between each.
*/
public static function fromCamelCase(string $string): string;
/**
* Tetapkan nama model dari yang terakhir dari array (jika ada).
*/
public static function setModelName(string $model, string $style = 'pascal case'): string;

/**
* Tetapkan gambar default dan kode ke controller.
*/
public static function setDefaultImage(null|string $default, string $field, string $model): array;

/**
* Ubah array dari konfigurasi menjadi string seperti array.
*/
public static function convertArraySidebarToString(array $sidebars): string;

/**
* Periksa apakah menu aktif.
*/
public static function isActiveMenu(string|array $route): string;

Yang ingin kami tambahkan di masa depan ​

  • Generator CRUD API (tersedia pada v0.3.0)
  • Dokumentasi API
  • Dapat membuat lebih banyak jenis model relasi
  • Unggah berkas selain gambar
  • CRUD dengan Design pattern (Service/Repository)
  • Laravel Pagination
  • Impor/Ekspor csv
  • Input untuk nama tabel kustom
  • Ubah validasi Request sebagai Array
  • Menambahkan pilihan untuk apakah menggunakan Route model binding
  • Menambahkan pilihan untuk mematikan Pluralization otomatis
  • Jika zona waktu diatur ke Indonesia, maka nonaktifkan Pluralization
  • Menambahkan nama pengguna ke tabel Users
  • Template Admin baru
  • Pilihan untuk otomatisasi tabel migrasi atau tidak
  • Menambahkan konfigurasi untuk menampilkan gambar dalam tabel data atau tidak
  • kemampuan untuk menyembunyikan/menampilkan Field pada halaman detail
  • Konfigurasi untuk membatasi Field yang ditampilkan pada halaman indeks
  • Dapat memilih Field yang akan ditampilkan dalam relasi belongsTo
  • Generator dapat membuat Seeder dan Factory (tersedia pada v0.3.0)
  • Menambahkan konfigurasi bawaan untuk panjang minimum & maksimum untuk jenis kolom String
  • Generator dapat membuat subfolder untuk validasi Request
  • Menambahkan konfigurasi untuk jenis gambar, tampilkan dalam bentuk bulat atau kotak
  • Menambahkan dukungan untuk diffForHumans() ke jenis Input tanggal.
  • Validasi kustom yang dapat ditulis pada Input
  • Generator dapat menggunakan penyimpanan Cache
  • Generator dapat membuat kebijakan
  • Generator dapat membuat pengamat model
  • Gunakan Database Transaction
  • Generator dapat membuat mutator & pengecoran
  • Konfigurasi untuk unggah berkas ke S3
  • Menambahkan opsi Soft Delete
  • Jika model berada dalam subfolder maka rute akan menggunakan sub-rute
  • Menambahkan Unit Test untuk Generator
  • Generator dapat membuat Unit Test
  • Menambahkan pemberitahuan jika pengguna mengubah email atau kata sandi mereka
  • Menambahkan log aktivitas
  • Menambahkan cadangan basis data
  • Generator dapat membuat kelas enum untuk jenis kolom tipe enum
  • Refaktor kode

INFO

Daftar diatas berubah kapan saja dan fitur mungkin ditambahkan dalam urutan acak.