Admin Template Dashboard Codeigniter 4 merupakan admin template yang dikembangkan berbasis framework codeigniter 4 atau sering disebut CI4.
I. Builtin Module
Admin template ini sudah dilengkapi berbagai module umum yang umumnya digunakan sebagai basis pengembangan aplikasi, baik aplikasi sederhana maupun aplikasi yang kompleks, adapun module yang sudah disertakan adalah sebagai berikut:
1. Login System
Setiap aplikasi umumnya membatasi pengguna dengan user authentication menggunakan sistem login. Aplikasi admin template ini sudah dilengkapi dengan fitur tersebut, sehingga Anda tidak perlu repot repot membangun sistem login
2. User Manager
Fitur penting selanjutnya adalah module untuk mengelola user yang ada, baik menambahkan mengedit maupun menghapus user. Aplikasi ini juga sudah disertakan fitur untuk mengelola user
3. Menu Manager
Dalam suatu aplikasi, suatu hal yang rumit dilakukan adalah membuat sistem menu, dimana pengaturan hierarki menu (parent - child) dapat dilakukan secara mudah dan otomatis. Aplikasi ini sudah menyediakan module tersebut lengkap dengan pengaturan icon (terdapat pilihan ratusan icon dari Font Awesome 5)
Berapa pengaturan yang dapat dilakukan pada module menu manager adalah sebagai berikut:
- Menambah, mengedit, menghapus menu yang ada.
- Menambahkan icon pada menu.
- Mengatur hierarki menu dengan mudah, cukup dengan drag and drop.
- Mengatur menu yang ditampilkan sesuai dengan role user yang login.
4. Module Manager
Pada Admin Template Codeigniter 4 yang kami kembangkan ini, setiap halaman/module dari aplikasi dapat dikelola dengan mudah melalui menu module manager, dengan demikian kita dapat dengan mudah menambah, mengedit, menghapus, maupun menonaktifkan module/halaman yang ada.
5. Role Manager
Pada admin template ini, setiap user momiliki role/peran tertentu yang nantinya role ini mempengaruhi halaman/module apa saja yang boleh diakses oleh user dengan role tersebut.
Aplikasi ini sudah menyediakan halaman role manager, dimana Anda dapat dengan mudah mengelola (menambah, mengedit, menghapus) role yang ada. Disamping itu, Anda juga dapat mengatur halaman default yang otomatis terbuka ketika user dengan role tertentu login ke dalam sistem.
6. Assign Role ke User
Pada halaman ini, Anda dapat dengan mudah meng assign role ke user. Admin template ini memungkinkan Anda untuk meng-assign lebih dari role ke satu user, misal user A memiliki role sebagai user biasa dan web developer. Dengan sistem seperti ini, pengaturan hak akses dapat dilakukan lebih fleksibel dibanding sistem dimana user hanya bisa memiliki satu role.
7. Assign Module ke Role
Pada umumnya aplikasi, setiap user memiliki role/peran dan setiap role memiliki hak akses berbeda beda. Hak akses (seperti melihat, menambahkan, mengubah, maupun menghapus data) setiap role harus dapat dikelola dengan mudah.
Dengan admin template ini, pengaturan hak akses tersebut dapat dilakukan dengan mudah. Melalui halaman Assign Module ke User, Anda dapat dengan mudah mengatur module/halaman apa saja yang diperbolehkan diakses oleh role tertentu.
8. Assign Menu ke Role
Pada module Assign menu ke role, Anda dapat dengan mudah melakukan pengaturan menu apa saja yang akan ditampilkan ketika user dengan role tertentu login ke dalam sistem.
Hal ini untuk mempermudah user mengakses module yang telah diassign ke role yang dimiliki oleh user tersebut, misal user dengan role Super User diperbolehkan untuk mengakses halaman user, maka menu user perlu kita assign ke role editor tersebut, sehingga ketika user dengan role Super User tersebut login, menu user akan muncul.
9. Setting Website
Sebagai pengambang aplikasi, Anda tentu ingin meyakinkan user bahwa aplikasi yang Anda kembangkan adalah buatan Anda sendiri. Tenang saja, kami sudah memikirkan hal tersebut.
Aplikasi Admin template yang kami kembangkan ini, memungkinkan Anda untuk mengcustom material aplikasi seperti logo, favicon, header, footer, warna, dll, sehingga aplikasi akan terlihat uni k dan meyakinkan bahwa aplikasi tersebut merupakan ciptaan Anda sendiri
10. Personalisasi Layout
Dalam mengembangkan aplikasi, kami memperhatikan dengan detil layout dari aplikasi sedemikian rupa sehingga aplikasi dapat terlihat menarik dan user friendly, yang tentunya akan membuat user betah berlama lama menggunakan aplikasi.
Tentunya kriteria menarik ini berbeda beda bagi setiap user. Untuk mengakomodir hal tersebut, admin template codeigniter 4 ini telah menyediakan menu bagi user untuk mengkustomisasi layout dari aplikasi sesuai selera user tersebut. Adapun yang dapat dikustomisasi adalah:
- Warna tema aplikasi
- Warna sidebar
- Jenis dan ukuran huruf
II. Builtin Script
Selain berbagai module pengembangan aplikasi, admin template codeigniter 4 ini juga dilengkapi dengan berbagai contoh script, dari yang sederhana hingga yang kompleks. Dengan contoh script ini, Anda cukup melakkukan memodifikasi script yang ada sesuai dengan aplikasi yang anda kembangkan.
Selain itu, dengan berbagai contoh script yang ada, Anda akan memiliki gambaran bagaimana admin template ini bekerja sehingga dapat mempercepat learning curve ketika mengembangkan aplikasi dengan template ini.
Berikut ini beberapa contoh built in script yang ada:
1. CURD Multiple File Upload
Aplikasi ini telah disertakan form input data dengan file upload dinamis, yang artinya user dapat mengupload file dengan jumlah yang tidak terbatas. Setelah disubmit, user dapat mengedit file tersebut, apakah akan dihapus atau ditambahkan file lainnya
2. CURD Image Upload Dengan Preview Image
Script lainnya yang dapat digunakan adalah form upload image disertai dengan preview image. Pada form ini, setelah user memilih gambar yang ingin diupload, otomatis preview gambar tersebut akan muncul disamping data lainnya yaitu nama, jenis, dan ukuran file.
Selain itu, ketika melakukan editing data, preview gambar juga akan muncul dan dengan mudah dapat dilakukan perubahan data gambar (upload ulang gambar lainnya).
3. CURD Dengan Options Dinamis
Pada contoh script ini, form dilengkapi dengan options dinamis dimana user dapat memilih options lebih dari satu. Options dinamis pada form ini menggunakan library select2.
Pada halaman editing data, options yang telah dipilih ini akan muncul sesuai dengan data yang dipilih dan dapat dengan mudah dilakukan perubahan data.
4. CURD dengan Input Dinamis
CURD yang cukup rumit dilakukan adalah membuat form dengan input dinamis, dimana user dapat dengan mudah menambahkan/mengurangkan jumlah inputan yang ada.
Aplikasi ini sudah disertai dengan contoh form dengan input dinamis, Anda cukup menyesuaikannya dengan kebutuhan aplikasi Anda.
5. Data Tables
Ketika menyajikan data dalam bentuk tabel, banyak hal yang perlu kita perhatikan, diantaranya pagination, search data, dan sorting data.
Hal tersebut akan terasa rumit jika kita lakukan secara manual, solusi mudahnya adalah menggunakan plugin data tables, dimana semua keperluan penyajian data dengan format tabel dapat dilakukan dengan mudah.
Aplikasi admin template ini telah menyediakan contoh script bagaimana cara menyajikan data menggunakan plugin data tables.
6. Data Tables Ajax
Penyajian data menggunakan data tables biasa akan menjadi masalah jika data yang ditampilkan jumlahnya besar, misal ribuan. Kendala umum yang terjadi adalah browser menjadi sangat lambat ketika menampilkan tabel.
Hal ini disebabkan karena broser perlu merender dan menampilkan semua tabel terlebih dahulu kemudian dengan javascript mengaturnya sesuai dengan setting yang ada di data tables.
Untuk mengatasi hal tersebut, solusinya adalah menggunakan data tables dengan request ajax dimana data yang di load dan ditampilkan hanya yang diperlukan saja (sesuai dengan halaman yang ditampilkan)
Aplikasi ini sudah menyertakan contoh data tables dengan request AJAX, yang tentunya dengan coding yang efektif dan efisien, sehingga untuk menggunakannya sesuai kebutuhan, Anda tidak perlu melakukan banyak perubahan.
7. Smart Upload Excel
Admin Template ini disertakan sampel script Smart Upload Excel. Script ini akan otomatis membaca baris pertama file excel sebagai kolom tabel dan baris berikutnya sebagai data yang akan diinsert ke dalam tabel. Dengan metode ini, Anda tidak perlu repot mendefinisikan nama tabel pada coding Anda.
Script sudah dioptimasi sehingga sebanyak apapun data excel yang diupload, Anda tidak akan mengalamai error yang disebabkan memory overload, untuk data yang besar, Anda cukup memperbesar Waktu eksekusi query saja. Di konfigurasi standar (120 second) script dapat mengupload data sebanyak 35.000 data
8. Smart Download Excel
Script Smart Download Excel akan memudahkan Anda untuk membuat script untuk mengekspor data tabel database ke file excel. Anda cukup mendefinisikan nama tabel yang ingin diekspor datanya dan script akan otomatis menggenerate data tabel tersebut dan mengekspornya ke bentuk file excel.
Cara kerja script ini yaitu script akan membaca nama dan tipe data kolom tabel database kemudian menuliskannya pada baris pertama file excel, selanjutnya, pada baris berikutnya, script akan menulis data tabel tersebut sesuai dengan tipe data kolom.
9. PDF & Kirim Email
Contoh script berikutnya adalah generate file PDF dari berbagai resource. Pada contoh script yang disertakan, PDF digenerate dengan menggabungkan berbagai gambar dan teks HTML.
Selain itu, file PDF hasil generate tadi juga bisa langsung dikirim via email via attachment. Email sudah mengakomodir berbagai konfigurasi server, mulai dari server standar (shared hosting, email hositng, GMail OAuth 2, maupun Amazon SES.
10. RBAC
Dilengkapi contoh script untuk penerapan RBAC. Untuk detil penerapan RBAC ini bisa dibaca melalui user manual aplikasi.
III. Quality Code dan Database
Sama sama menggunakan framework, coding antara satu programmer dengan programmer yang lain tentu berbeda disamping itu, tidak semua programmer memiliki pemahaman yang baik bagaimana coding yang berkualitas, efisien, baik dan benar.
Sebagaimana tradisi kami dalam mengembangkan aplikasi, Admin Template Codeigniter 4 ini kami kembangkan dengan prinsip coding best practice, dimana code ditulis dengan baik dan efisien, sehingga mempermudah Anda dalam mengembangkan aplikasi.
Selain coding dari sisi aplikasi, kami juga memperhatikan detil bagaimana database didesain dan dikembangkan, yang tentunya sesuai dengan kaidah desain database yang baik dan benar, dengan demikian Anda akan merasa tenang karena aplikasi yang Anda kembangkan adalah aplikasi yang handal, yang tidak membawa masalah di kemudian hari.
IV. Fitur Lain
Selain berbagai fitur handal diatas, aplikasi Admin Template Codeigniter 4 CI4 yang kami kembangkan ini memiliki berbagai fitur menarik lainnnya yaitu:
- Aplikasi menggunakan google font secara offline, sehingga bentuk font akan tetap baik ketika aplikasi dijalankan secara online maupun offline.
- Builtin Breadcrumb. Dengan fitur ini, setiap halaman yang ditampilkan akan muncul link navigasi menuju halaman tersebut.
- Menggunakan plugin modern yang sudah teruji keandalannya, diantaranya: Font Awesome 5, Bootstrap 4, Google Font, jQuery 3, Data Tables, Sweet Alert2, Tiny MCE 5, dll
V. HMVC
Aplikasi ini juga sudah disertakan versi HMVC (Hierarical Model View Controller) penjelasan lebih lanjut mengenai model HMVC ini dapat dibaca di: https://jagowebdev.com/hmvc-pada-codeigniter-4/
Note: Aplikasi ini aktif di kembangkan di maintain