Clone project disini, instalasi bisa baca langsung pada readme. Bagi yg belum familiar dengan bagaimana cara clone project bisa baca disini.
Oke sekarang codedoct akan jelaskan apa saja featurenya dan cara menggunakannya.
1. Auth with RBAC (Role Base Access Controll)
Project laravel starter kit tersebut sudah support RBAC yaitu access api route dengan role sebagai dasar hak akses, misal api route get users hanya bisa di akses oleh superadmin,
Route::get('', 'UserController@getUsers')->middleware('auth.privilage:qwe123');
Jika ingin menambah multiple akses maka code akan menjadi seperti ini,
Route::get('', 'UserController@getUsers')->middleware('auth.privilage:qwe123|zxc123');
pada project sudah terdapat 2 role superadmin dengan hash_id "qwe123" dan user dengan hash_id "zxc123", anda bisa menambah sendiri user role lainnya pada table role. Sehingga anda jika kita mengakses api yang dengan role yang tidak di setujui maka akan keluar error handling,2. Error handling
Project ini sudah mendukung berbagai error handling yang dapat di lihat pada /app/Exceptions/Handler.php
3. Doctrine migration
Untuk memudahkan dalam manajemen table maka digunakan doctrine yang di padukan dengan eloquent laravel.
4. Support payment with midtrans
Project ini sudah didukung untuk pembayaran payment gateway dengan midtrans, dimana dari client apps (ios atau android) dapat mengakses api "charge" untuk generate token yang kemudian digunakan untuk mengakses midtrans payment.
5. Support notification with Firebase
Project ini sudah mendukung push notification menggunakan firebase ke semua client dengan cara daftarkan dulu device token setiap client menggunakan api,
kemudian anda bisa push notification ke semua user atau ke user tertentu yang sudah didaftarkan device tokennya,
6. Storage file with Server or S3(AWS)
Project ini sudah mendukung penyimpanan server atau s3 yang dapat anda atur pada file .env dengan syntax yang sangat sederhana karena sudah di handle pada ImageServices.php
if ($request->file('image')) {
// upload image
$uploadImage = $imageService->uploadImage($request->file('image'), 'profile', $user, 800);
$user->image = $uploadImage;
}
7. Indonesian geograph
Sudah terdapat 3 api yang dapat memudahkan anda mendapatkan data provinsi, kota, dan kecamatan.
Anda dapat mengatur API mana saja yang bisa di akses secara public, wajib, login atau keduanya. dimana anda hanya tinggal menambahkan apinya pada routes general yang ada pada file /routes/General/general.php. Akses public ini sudah di handle pada file /app/Http/Middleware/AuthenticateUserSession.php
Semua api pada postmant bisa di download disini dan tinggal di import saja pada postman anda.
===DONE!===