Laradmin es mi “personal pre.built" desarrollado haciendo uso de Laravel 7 y una plantilla Personalizada basada en Bootstrap 4, para ser usada como base inicial en proyectos que necesitan el desarrollo de un panel de control o administrativo con gestión de usuarios con roles y permisos.
El desarrollo integra el sistema de autentificación por defecto de Laravel, y el uso del paquete spatie/laravel-permission cubriendo en la mayor medida:
- CRUD de usuarios
- Asignación de roles
- Asignación de permisos a roles
- Habilitar/deshabilitar acceso al usuario
- Recuperación de contraseña por correo electrónico
- Registro y listado de ingresos y salidas del sistema (logins)
La intención como proyecto base es trabajar con los roles de administrador (con todos los permisos), y el de usuario normal (permisos asignados a este rol), la misma se puede modificar y /o ampliar según las necesidades del proyecto de manera manual, aprovechando los recursos que facilita el paquete spatie/laravel-permission para agregar mas roles de usuarios así como diversos permisos.
- Composer
- Requerimientos de Laravel 7
- Node.js y NPM (Opcional para trabajar y compilar los assets con Laravel Mix)
Aviso crear un virtual host para este proyecto, es necesario que el directorio public (como se aconseja) del framework funcione como la raíz, o no funcionara la correcta lectura de las fuentes por parte de font awesome y otras librerias empleadas en este desarrollo.
git clone https://github.com/theizerg/laradmin.git
cd laradmin
composer install
Modificar el archivo .env con los datos correspondientes al proyecto, credenciales a la base de datos y envió de correo electrónico (recuperación de contraseña).
Migrar a la base de datos los roles y permisos iniciales, así como el usuario administrador por defecto.
cd laradmin
php artisan migrate --seed
Los datos del usuario por defecto podrán ser vistos (y modificados antes de migrar), en los archivos seeds del proyecto en database/seeds.
Enjoy!! :)
A continuación el listado de tecnologías y plugins utilizados en este desarrollo.
- Laravel 7
- spatie/laravel-permission 2.7
- nicolaslopezj/searchable 1.*
- vinkla/hashids 3.3
- Entre otros más.
- Bootstrap 4.4
- Jquery 3.2
- Font Awesome 4.7.0
- jQuery-Autocomplete 1.4.4
- toastr 2.1.2
- iCheck 1.0.2
- Pace 1.0.3
Theizer González
Backend web developer
theizerg@gmail.com | @theizerg_