Composer logo

Hay varias cosas que Laravel por defecto hace por uno:

La otra pata de Laravel y de la programación contemporánea es reutilizar código de otros e integrarlo en nuestros proyectos. Así que esto es una lista de paquetes que usé en Laravel para el proyecto que tuve que desarrollar pero que sirven para cualquier otro.

Laravel Excel

A cualquier persona que trabaje en una oficina con administrativos y con información le va a servir importar y exportar hojas de cálculo. Laravel Excel es una librería externa que adapta PHPSpreadsheet a un lenguaje orientado al objeto y bien simple de entender. Por ejemplo, permite utilizar los modelos de la aplicación y utilizarlos directamente para importar datos de una planilla a la tabla.

Para un modelo llamado User primero escribimos en la línea de comandos:

php artisan make:import UsersImport --model=User

y luego aparecerá un importador como este.

namespace App\Imports;

use App\User;
use Maatwebsite\Excel\Concerns\ToModel;

class UsersImport implements ToModel
{
	public function model(array $row)
	{
		return new User([
			'name' => $row[0],
		]);
	}
}

Luego hay que adaptar algunos detalles (como si los datos empiezan desde cierta línea o si vamos a utilizar los encabezados) y agregarlo a nuestro controlador así:

use App\Imports\UsersImport;
use Maatwebsite\Excel\Facades\Excel;
use App\Http\Controllers\Controller;

class UsersController extends Controller 
{
	public function import() 
	{
		Excel::import(new UsersImport, 'users.xlsx');
		
		return redirect('/')->with('success', 'All good!');
	}
}

Y eso es todo. Todo está en la documentación de la misma página oficial.

Laravel Users (y Laravel Roles)

Laravel Users permite administrar usuarios de manera bien simple y asignarles roles. Te permite tener un panel de administración para los usuarios y se adapta a otros paquetes de manejo de roles de usuario.

Acá no hay que codificar nada. Simplemente hay que entrar a localhost/users

Mantenedor de usuarios

Se instala así:

composer require jeremykenedy/laravel-users
php artisan vendor:publish --tag=laravelusers

Igual es recomendable leer la documentación por si hay que modificar la configuración de laravelusers.php.

Laravel Roles es un paquete creado por el mismo autor para crear y administrar roles de usuarios.

Laravel Log Viewer

Encontrar errores es una necesidad típica de un programador. El problema es que los registros de errores quedan en carpetas muy escondidas e incómodas de abrir constantemente. Laravel Log Viewer permite simplemente abrir esos logs desde una web y mirarlos (y hasta eliminarlos) con una interfaz bootstrap bien amigable.

Laravel Log Viewer

Para instalarlo hay que escribir:

composer require rap2hpoutre/laravel-log-viewer

Larecipe

Este paquete permite crear la documentación y manuales de la aplicación. No es un documentador automático como phpdoc sino que te permite escribir con markdown la documentación de tu proyecto. Muy útil porque sólo te debes preocupar de escribir y todo queda muy bien presentado. Con estas dos líneas basta para tenerlo funcionando:

composer require binarytorch/larecipe
php artisan larecipe:install

Luego nos vamos a resources/docs y comenzamos a escribir. La página se puede ver desde localhost/docs. Guarda las versiones anteriores también (si tienes una versión anterior de tu aplicación por ejemplo).

Se ve así:

Documentación con Larecipe

Estos son los que he aprovechado más en este tiempo, pero hay más. Quizá haga un post similar cuando recopile nuevas.