“VITE” COMO PAQUETE FRONTEND PREDETERMINADO DE LARAVEL Y SU SISTEMA DE AUTENTICACIÓN
Published: 2022-07-09 19:23:21

“Vite” actualmente se ha convertido paquete frontend predeterminado para los proyectos en el framework de Laravel y, por lo tanto, también ha cambiado su sistema de autenticación. Por este motivo, el objetivo de este documento es explicar y mostrar cómo aplicar dichos cambios en un proyecto nuevo, teniendo en cuenta que previamente ya se debe tener herramientas y recursos específicos que se detallarán a continuación para que el desarrollo base se pueda dar sin inconvenientes.

**I.  VITE Y SU INSERCIÓN EN LARAVEL**
Para comenzar, “Vite” se define como una herramienta del lado del frontend creada por Evan You (creador de Vue) y, que se encarga de apoyar al desarrollador a crear proyectos sin necesidad de que este se encuentre atado a un framework en específico, esto hace que su uso sea cómodo y sencillo.

De esta manera, el equipo de desarrollo de Laravel ha tratado de implementar dicha herramienta a su framework, logrando así publicar una nueva actualización el 29 de junio del 2022 donde ya se puede hacer el uso de esta tecnología y, se estableció como paquete por defecto para el mismo. 

Sin embargo, este cambio ha afectado al sistema de autenticación por defecto que ha tenido Laravel, por eso es necesario saber desde la raíz cómo se puede aplicar el paquete de Vite en un nuevo proyecto.   

**II.  IMPLEMENTACIÓN DEL SISTEMA DE AUTENTICACIÓN EN LARAVEL**
Previo a la implementación del sistema de autenticación, se debe tomar en cuenta que el ejemplo se desarrolló en un computador con el sistema operativo de Windows 11 y que se debe tener las siguientes herramientas y/o recursos:
-	Visual Studio Code.
-	XAMPP inicializado con el servicio Apache y MySQL.
-	Laravel, Composer y Node.js.

Entonces, se debe generar el nuevo proyecto con el comando _**laravel new [nombre del proyecto]**_.

 ![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zumnk3n6tekrcbrtkixa.png)
 
Luego, hay que dirigirse a la carpeta del proyecto e inicializar Visual Studio Code para abrir una nueva terminal.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c1wys2s0kgi6heogs5mr.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zhfb5oxjdt4dhah01pd9.png)
  
Ahora, se procede a utilizar Laravel Breeze ejecutando el comando _**composer require laravel/breeze**_.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9wxzqvbyuvo7i8sq9cgn.png)

A continuación, se procede a instalar dicho paquete con _**php artisan breeze:install vue**_.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y26g2zdtoi5f4l6fz631.png)
 
Así, solamente falta ejecutar los comandos _**npm install**_ y _**npm run dev**_ respectivamente para tener configurado el ambiente correctamente. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mgbzhnxwu5uvg0j3ruok.png) 

De esta forma, ya se tendrá aplicado el sistema de autenticación en el proyecto, por lo cual queda inicializar el servidor Apache y MySQL de la herramienta XAMPP.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l1grzl0hcb1gdld7aeog.png)

Se crea una base de datos (se recomienda que tenga el nombre exacto del proyecto) y se realiza la inserción de las variables de conexión en el archivo .env.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rqffji4dp4sd2hw58agx.png)
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fmo4nt3t023i0umz0so1.png) 

Finalmente, se debe abrir una nueva terminal en Visual Studio Code y se ejecutan los comandos _**php artisan migrate:fresh**_ y _**php artisan serve**_ para poder observar los resultados. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l3vabp4tu5bz8mtew590.png) 

Así, los resultados obtenidos se ven reflejados en las siguientes imágenes:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7er889p28o6hyi3mdl0o.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7ss2tkat3zgd17edzmw6.png)
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t2gpk14olsb4u60wa566.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lsvzakmq7bhbkpv61nj8.png) 

La plantilla de Laravel con la implementación ya realizada de este sistema de autenticación se puede obtener del siguiente link:
https://github.com/raul-tenorio/laravel-authentication-vite-template

El documento PDF con la información de esta publicación se puede obtener [aquí](https://drive.google.com/file/d/1w566K3RLu35O3e1YJThrd0LWf0VL9BmL/view?usp=sharing).

**III.  REFERENCIAS**
[1] Redmond, P. (2022, 29 junio). Vite is now the default frontend asset bundler for Laravel applications. Laravel News. https://laravel-news.com/vite-is-the-default-frontend-asset-bundler-for-laravel-applications
[2] Laravel LLC. (2022). Laravel - The PHP Framework For Web Artisans. Laravel. https://laravel.com/docs/9.x/frontend