CodeIgniter 4 Aplicacion Boilerplate Plantilla

Que es boilerplate? normalmente en el ámbito de desarrollo de aplicaciones se le llama boilerplate a todo ese código repetitivo que usamos en un proyecto, o mas bien lo que siempre usamos en todos los proyectos, como login, menús, permisos.

A continuación les dejo un boilerplate para CodeIgniter el cual hice una bifurcación para adaptarlo a nuestras necesidades.

Este paquete para CodeIgniter 4 sirve como plataforma básica para crear rápidamente una aplicación administrativa. Incluye creación y gestión de perfiles, gestión de usuarios, roles, permisos y un menú generado dinámicamente.

Características

  • Tema backend configurable AdminLTE 3
  • CSS framework Bootstrap 4
  • Iconos de Font Awesome 5
  • Permisos basados en roles (RBAC) proporcionados porMyth/Auth
  • Generación de menús dinamicos
  • Traducciones en English / Indonesian / Spanish

Este proyecto aún está en sus primeras etapas de desarrollo… ¡no dude en contribuir!

El autor original es agungsugiarto/boilerplate https://github.com/agungsugiarto/boilerplate, solo hicimos un fork para adaptarlo a nuevas necesidades como traducirlo al español y hacerlo funcional en xampp/lampp

El fuente con los cambios mas recientes de fork estan en github https://github.com/julio101290/boilerplate

Instalación

  1. Obtener el modulo mediante composer
composer require julio101290/boilerplate

2. Establezca CI_ENVIRONMENT, baseURL, página de índice y configuración de la base de datos en su archivo .env según su base de datos existente (si no tiene un archivo .env, puede copiar primero desde el archivo env: cp env .env primero). Si la base de datos no existe, primero cree la base de datos.

# .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. Correr el comando para publicar de auth

php spark auth:publish

Publish Migration? [y, n]: y
  created: Database/Migrations/2017-11-20-223112_create_auth_tables.php
  Remember to run `spark migrate -all` to migrate the database.
Publish Models? [y, n]: n
Publish Entities? [y, n]: n
Publish Controller? [y, n]: n
Publish Views? [y, n]: n
Publish Filters? [y, n]: n
Publish Config file? [y, n]: y
  created: Config/Auth.php
Publish Language file? [y, n]: n

NOTA: Todo lo relacionado con cómo configurar la autenticación puede encontrar en Myth/Auth.

¿Ya está listo? ¡¡No tan rapido!! ;-) Después de publicar Config/Auth.php, debe cambiar las $views públicas con estas líneas a continuación:

public $views = [
    'login'           => 'julio101290\boilerplate\Views\Authentication\login',
    'register'        => 'julio101290\boilerplate\Views\Authentication\register',
    'forgot'          => 'julio101290\boilerplate\Views\Authentication\forgot',
    'reset'           => 'julio101290\boilerplate\Views\Authentication\reset',
    'emailForgot'     => 'julio101290\boilerplate\Views\Authentication\emails\forgot',
    'emailActivation' => 'julio101290\boilerplate\Views\Authentication\emails\activation',
];

Abra app\Config\Filters.php, busque $aliases y agregue estas líneas a continuación:

public $aliases = [
    'login'      => \Myth\Auth\Filters\LoginFilter::class,
    'role'       => \julio101290\boilerplate\Filters\RoleFilter::class,
    'permission' => \julio101290\boilerplate\Filters\PermissionFilter::class,
];

4. Ejecute publish, migrate y seed del boilerplate

php spark boilerplate:install

Abra app\Config\validation.php, busque $ruleSets y agregue estas líneas a continuación:

public $$ruleSets = [
    \Myth\Auth\Authentication\Passwords\ValidationRules::class,
];

Abra app\entities\Users.php, busque $casts y agregue estas líneas a continuación:


   protected $casts = [
        'username' => 'string',
        'email' => 'string',
        'firstname' => 'string',
        'lastname' => 'string',
        'active' => 'boolean',
        'force_pass_reset' => 'boolean',
    ];

Ejecute el servidor de desarrollo:

php spark serve

Abrir en el navegador http://localhost:8080/admin

Default user and password
+----+--------+-------------+
| No | User   | Password    |
+----+--------+-------------+
| 1  | admin  | super-admin |
| 2  | user   | super-user  |
+----+--------+-------------+

Configuraciones

Plantilla de configuración

Puede configurar el controlador de tablero predeterminado y el tema de back-end en app\Config\Boilerplate.php

class Boilerplate extends BaseConfig
{
    public $appName = 'Boilerplate';

    public $dashboard = [
        'namespace'  => 'julio101290\boilerplate\Controllers',
        'controller' => 'DashboardController::index',
        'filter'     => 'permission:back-office',
    ];
// App/Config/Boilerplate.php

Uso

Puede encontrar cómo funciona con las rutas de código de lectura, el controlador y las vistas, etc. Finalmente… ¡Feliz codificación!

Contribuciones

Las contribuciones son muy bienvenidas.

Licencia

Este paquete es software gratuito distribuido bajo los términos de la licencia MIT.

Comentarios

Entradas populares