Laradmin es mi “personal pre.built" desarrollado haciendo uso de Laravel 5.5 y la plantilla AdminLTE basada en Bootstrap 3, 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 5.5
- 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/jvizcaya/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.
- Bootstrap 3.3.7
- Jquery 3.2
- Font Awesome 4.7.0
- Admin-Lte 2.4.2
- jQuery-Autocomplete 1.4.4
- toastr 2.1.2
- iCheck 1.0.2
- Pace 1.0.3
Los componentes y plugins utilizados por la plantilla Admin Lte, así como otras incorporadas fueron instalas haciendo uso de NPM y compiladas posteriormente con Laravel Mix (Webpack) en los archivos public/css/app.css y public/js/app.js.
Si desea instalar nuevos plugins o agregar estilos personalizados o nuevos scripts javascript con este metodo, se necesita tener instalados Node.js con NPM establecer los plugins requeridos en el archivo package.js y modificar los archivos assets en resources/assets y posteriormente ejecutar:
cd laradmin
npm install
npm run dev o npm run prod
Para mayor información en el uso de Laravel mix visita la documentación en el sitio de Laravel y en el repositorio del proyecto.
Jorge Vizcaya
Backend web developer
jorgevizcayaa@gmail.com | @jvizcayaa