Primeros pasos Laravel 10 con Livewire 2

07-04-2022 - Andrés Cruz

Primeros pasos Laravel 10 con Livewire 2 In english

Condiciones:

  • Libro de por vida en la tienda Kindle (Amazon)
  • Pdf, mobie, epub (Leanpub)
  • Actualizaciones frecuentes para agregar más y más secciones y mantenimiento.
  • Contacto por mensajes

Laravel es un framework fascinante, inmenso y con una curva de aprendizaje algo elevada y con múltiples opciones; este libro no es para iniciales y da por hecho de que ya sabes programar en Laravel.

Laravel Livewire lleva el desarrollo de Laravel un poco más allá; automatizando procesos rutinarios en esquemas muy flexibles en base a componentes, los componentes de Livewire que nos permite comunicar cliente y servidor de una manera muy simple, eficiente y sencilla.

Laravel Livewire no es un framework, es solamente una capa o scaffolding que agrega ciertas características extras al framework que podemos utilizar para crear grandes aplicaciones, con menos esfuerzo y tiempo de desarrollo.

 

Para quién es este libro

  • Este libro está dirigido a cualquiera que quiera comenzar a desarrollar con Laravel Livewire en el desarrollo de aplicaciones basadas en componentes de Laravel con algunos agregados que permiten la comunicación directa entre el servidor y el cliente.
  • Este libro no se recomienda a aquellas personas que no hayan trabajado con otros Laravel, si es tu caso, te aconsejo que primero conozcas y practiques con Laravel antes de comenzar; en mi sitio web encontrarás cursos, libros, publicaciones, vídeos y en general más información sobre Laravel.
  • Para aquellas personas que quieran aprender algo nuevo, conocer sobre una herramienta con poca documentación y la mayoría de ella está en inglés.
  • Para las personas que quieran mejorar una habilidad en el desarrollo web, que quieran crecer como desarrollador.
  • Con que te identifiques al menos con alguno de los puntos señalados anteriormente, este libro es para ti.

Introducción

Esta guía tiene la finalidad de dar los primeros pasos con Laravel Livewire; con esto, vamos a plantear dos cosas:

  1. No es un libro que tenga por objetivo conocer al 100% Laravel Livewire, si no sus componentes principales en base a ejemplos.
  2. Se da por hecho de que el lector tiene conocimientos al menos básicos sobre Laravel.

Laravel, al ser un framework más completo al cual te quieres enfrentar que en la práctica es que, tienen muchos más componentes con los cuales trabajar, se da por hecho que el lector tiene cierto conocimiento básico sobre cómo funciona el framework, como el uso o teoría de para qué funcionan las migraciones, el MVC, rutas, entre otras; no es necesario que sepas cómo manejarlas, pero sí que entiendas la lógica detrás de todo esto; si no los tienes, te recomiendo que veas mi primer libro de programación web en el cual damos los primeros pasos con CodeIgniter, el cual es un framework estupendo con muchas coincidencias con Laravel, y al ser un framework más pequeño y sencillo de manejar resulta más fácil de iniciar tu aprendizaje.

Finalmente; en comparación con otros libros, el enfoque será un poco más acelerado o general cuando aborde las explicaciones de los elementos que conforman el framework; y esto es así por dos aspectos principales:

  1. Quiero abordar la mayor cantidad de características de Laravel Livewire sin alargar de más el libro.
  2. Esto no es un libro recomendado si es el primer framework PHP de este tipo al cual te enfrentas, por lo tanto, siendo así, ya deberías de conocer estos aspectos de la estructura del framework.

Para seguir este libro necesitas tener una computadora con Windows, Linux o MacOS.

Recuerda que el libro actualmente se encuentra en desarrollo.

Capítulos del libro

Este libro tiene un total de 15 capítulos (aun en desarrollo), se recomienda que leas en el orden en el cual están dispuestos y a medida que vayamos explicando los componentes de Livewire, vayas directamente a la práctica, repliques, pruebes y modifiques los códigos que mostramos en este libro; el libro actualmente se encuentra en desarrollo.

  1. Capítulo 1: En este capítulo vamos a dar una breve introducción sobre Laravel Livewire.
  2. Capítulo 2: En este capítulo vamos a crear nuestro proyecto en Laravel Livewire.
  3. Capítulo 3: En este capítulo, presentamos las características con las cuales cuenta un proyecto creado en Laravel Livewire; manejo de equipos, API Tokens, y autenticación, son algunas de ellas.
  4. Capítulo 4: En este capítulo, vamos a crear una aplicación tipo CRUD sencilla y conocer todos los elementos propios de Livewire como, manejo de formularios, vistas y directivas mediante los componentes de Livewire.
  5. Capítulo 5: En este capítulo, vamos a trabajar en el estilo, mejorando la aplicación creada para que luzca como un módulo más de Laravel Livewire.
  6. Capítulo 6: En este capítulo, vamos a conocer la comunicación entre componentes de Livewire en base a eventos; detectar cambios en propiedades de la clase componente desde la vista y conocer el JavaScript de Laravel Livewire. 
  7. Capítulo 7: En este capítulo, vamos a crear el CRUD para los posts.
  8. Capítulo 8: En este capítulo, vamos a crear filtros y campos de búsquedas para un listado aprovechando las bondades de Livewire.
  9. Capítulo 9: En este capítulo, vamos a crear campos de ordenación para el listado por las columnas.
  10. Capítulo 10: En este capítulo, vamos a conocer todo lo que nos ofrece en JavaScript de Livewire y combinarlo con otros plugins, conoceremos los hooks en JavaScript, consumir propiedades, funciones y uso de los eventos.
  11. Capítulo 11: En este capítulo, vamos a conocer algunas características extras de las propiedades de Laravel Livewire, como personalizar la fase de actualización de los wire:model, como el uso de las propiedades computadas.
  12. Capítulo 12: En este capítulo, vamos a crear una sencilla aplicación tipo blog con un listado con filtros y campos de búsqueda y detalle.
  13. Capítulo 13: En este capítulo, vamos a crear un carrito de compras en la seción y base de datos, para el cual, veremos comunicación entre componentes, envío de eventos, plugin de tipo toast para mostrar mensajes de confirmación de operación realizada, con escuchadores de los eventos desde JavaScript.
  14. Capítulo 14: En este capítulo, vamos a mostrar el código de una aplicación creada con Alpine.js para crear un componente tipo to do list.
  15. Capítulo 15: En este capítulo, vamos a adaptar la aplicación en Alpine.js presentada en el anterior capítulo, para que funcione en conjunto con Livewire.

Livewire es un scaffolding para Laravel, el cual no es más que un esqueleto o capa que agregan ciertas funcionalidades extras en Laravel mediante el uso de componentes de Livewire; los mismos componentes de Laravel básico, pero con añadidos muy interesantes que son los que conforman a Livewire.

Además de esto, un proyecto en Livewire ya nos trae configurados Tailwind.css y Alpine.js.

En este libro emplearemos el término de “Laravel básico” para indicar el framework Laravel sin ningún añadido o scaffolding como es el caso de Laravel Livewire.

¿Qué nos ofrece Livewire?

Crear aplicaciones web modernas es difícil, herramientas como Vue y React son extremadamente poderosas, pero la complejidad que agregan al flujo de trabajo de un desarrollador de pila completa es una locura.

Pensando en lo anterior, Laravel Livewire es un marco completo para Laravel que simplifica la creación de interfaces dinámicas, sin dejar la comodidad de Laravel; en pocas palabras nos permite usar esquemas similares a los de Vue y React directamente en Laravel.

Podemos trabajar con esquemas similares a los de Laravel y Vue, pero de una manera más directa y simple; el desarrollo de Laravel está fuertemente ligado al uso de componentes; los mismos componentes de Laravel pero con agregados importante de Laravel Livewire lo que permite escalar enormemente el uso de componentes:

  1. Vincular mediante el archivo de rutas.
  2. Comunicación sencilla basada en acciones, eventos y funciones entre el cliente y el servidor.
  3. Agrega funcionalidades como paginación, carga de archivos, query string entre otras.

En definitiva, con Livewire, podemos hacer lo mismo que hacemos con Laravel y sus controladores, pero de una manera más sencilla en la cual podemos usar los componentes y reutilizar piezas de código que nos ofrece Livewire para hacer una comunicación muy sencilla entre el servidor con el cliente.

Aparte de que, dependiendo como decidas instalar a Laravel Livewire, puedes habilitar opciones que ya vienen de gratis como:

  1. Sistema de autenticación con registro, recuperación de credenciales.
  2. Vista de perfil con carga de usuario.
  3. Manejo de roles mediante equipos.
  4. Manejo de la API Tokens mediante Laravel Breeze con una interfaz administrable.

En definitiva, Livewire no es un framework, lo puedes ver como un paquete más que agrega funcionalidades extras a algunos elementos de Laravel que en definitiva lo convierten en un scaffolding o esqueleto para nuestras aplicaciones.

Para esta tecnología, tenemos que emplear dos documentaciones aparte (sin contar con la de Laravel).

La que nos ofrece la estructura del proyecto:

https://jetstream.laravel.com/2.x/stacks/livewire.html

Y la que nos ofrece Laravel Livewire al momento de desarrollar:

https://laravel-livewire.com/

Finalmente; en comparación con otros libros, el enfoque será un poco más acelerado o general cuando aborde las explicaciones de los elementos que conforman el framework; y esto es así por dos aspectos, principales:

  • Se da por hecho de que el lector tiene conocinientos en Laravel básico.
  • Al ser una tecnología más práctica, se base en sobre todo dar ejemplos y crear aplicaciones reales.

Andrés Cruz
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz en Udemy

Acepto recibir anuncios de interes sobre este Blog.

Conozca nuestros cursos sobre Laravel, CodeIgniter, Flutter, Electron, Django, Flask y muchos más!

Ver los cursos
¡Hazte afiliado en Gumroad!

!Cursos desde!

4$

En Academia

Ver los cursos

!Libros desde!

1$

Ver los libros
!Web Alojada en Hostinger!