This package for CodeIgniter 4 serves as a basic for quickly creating a back-office. It includes profile creation and his management, user management, roles, permissions and create dynamically menu.
- Configurable backend theme AdminLTE 3
- Css framework Bootstrap 4
- Icons by Font Awesome 5
- Role-based permissions provided by Myth/Auth
- Menu dynamically
- Localized English / Indonesian
Screenshoot | Demo On Heroku
1. Get The Module, since packages myth/auth still on development we need to change composer.json in root project directory. Open composer.json with your text editor and add code like this, or below like this.
"minimum-stability": "dev",
"prefer-stable": true,
And run require via composer
composer require agungsugiarto/boilerplate
2. Set CI_ENVIRONMENT, base url, index page, and database config in your .env
file based on your existing database (If you don't have a .env
file, you can copy first from env
file: cp env .env
first). If the database not exists, create database first.
# .env file
CI_ENVIRONMENT = development
app.baseURL = 'http://localhost:8080'
app.indexPage = ''
database.default.hostname = localhost
database.default.database = boilerplate
database.default.username = root
database.default.password =
database.default.DBDriver = MySQLi
3. Run publish auth
php spark auth:publish
Publish Migration? [y, n]: n
Publish Models? [y, n]: n
Publish Entities? [y, n]: n
Publish Controller? [y, n]: n
Publish Views? [y, n]: n
Publish Config file? [y, n]: y
created: Config/Auth.php
Publish Language file? [y, n]:
NOTE: Everything about how to configure auth you can find add Myth/Auth.
Its done ? not to fast. After the publish Config/Auth.php
you need to change
public $views
with below like this.
public $views = [
'login' => 'agungsugiarto\boilerplate\Views\Authentication\login',
'register' => 'agungsugiarto\boilerplate\Views\Authentication\register',
'forgot' => 'agungsugiarto\boilerplate\Views\Authentication\forgot',
'reset' => 'agungsugiarto\boilerplate\Views\Authentication\reset',
'emailForgot' => 'agungsugiarto\boilerplate\Views\Authentication\emails\fogot',
'emailActivation' => 'agungsugiarto\boilerplate\Views\Authentication\emails\activation',
];
Open app\Config\Filters.php
see at $aliases
add with below like this.
public $aliases = [
'login' => \Myth\Auth\Filters\LoginFilter::class,
'role' => \agungsugiarto\boilerplate\Filters\RoleFilter::class,
'permission' => \agungsugiarto\boilerplate\Filters\PermissionFilter::class,
];
4. Run publish, migrate and seed boilerplate
php spark boilerplate:install
5. Run development server:
php spark serve
6. Open in browser http://localhost:8080/admin
Default user and password
+----+--------+-------------+
| No | User | Password |
+----+--------+-------------+
| 1 | admin | super-admin |
| 2 | user | super-user |
+----+--------+-------------+
Config Boilerplate
You can configure default dashboard controller and backend theme in app\Config\Boilerplate.php
,
class Boilerplate extends BaseConfig
{
public $appName = 'Boilerplate';
public $dashboard = [
'namespace' => 'agungsugiarto\boilerplate\Controllers',
'controller' => 'DashboardController::index',
'filter' => 'permission:back-office',
];
// App/Config/Boilerplate.php
You can find how its work with the read code routes, controller and views etc. Finnaly happy coding!
Please see CHANGELOG for more information what has changed recently.
Contributions are very welcome.
This package is free software distributed under the terms of the MIT license.