Personalizando las notificaciones y errores de Laravel

Generalmente, se puede distinguir qué apps han sido creadas con Laravel con ver el diseño del email para las notificaciones que envían. Fondo gris azulado con un encuadre blanco. Y el botón de acción en gris.

Lo mismo pasa con las páginas de error.

El diseño no es malo, pero podría dar la impresión de que la app carece de una identidad al no distinguirse de entre otras apps.

Por lo que dediqué tiempo para personalizar las notificaciones y las páginas de error.

Personalizando las notificaciones

Mi primer intento fue hacer que las notificaciones se envíen como texto plano. Sin nada superfluo. Texto, el enlace de la acción como URL y nada más.

Sin embargo, revisando la documentación, no encontré cómo cambiar de HTML a texto plano. Parecía que todas las notificaciones se envían en las dos versiones, HTML y en texto plano.

Buscando si alguien más tenía este problema, encontré un hilo y un post de @igorsantos07 en Laracasts con una posible solución. Parecía que creando una clase helper BareMail se podría hacer. Pero no me funcionó y no entendí el argumento de cómo funcionaría.

Después de mi fracaso, me di cuenta de que en vez de querer enviar emails en texto plano, lo que quería realmente era simplificarlos. Si seguía utilizando HTML, podría tener ventajas como la de controlar el tamaño de texto y sobre todo, mostrar enlaces, en vez de la URL completa. Muy útil para la URLs firmadas que son bastante largas.

Con el comando de artisan php artisan vendor:publish --tag=laravel-notifications pude publicar las vistas y hacer ajustes al diseño con el siguiente resultado.

Personalizando las páginas de error

Personalizar las páginas de error, es igual de sencillo. Con el comando de artisan php artisan vendor:publish --tag=laravel-errors se publican las vistas. No realicé un grandes cambios, sólo darles un poco de identidad.