Skip to content

WARNING

Kamu sedang menjelajahi dokumentasi untuk versi Generator yang lama nih. Tolong pertimbangkan untuk memperbarui proyek kamu ke versi Generator 0.4 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.