Disenador y desarrollador web full-stack.

Trabajo como desarrollador web full-stack en Yclas, además de desarrollar proyectos web independientes en Shipwork.

Agrupar una colección de modelos por fecha en Laravel.

En vez de mostrar una larga lista de entradas como las de publicaciones en un blog, una mejor manera es agruparlas por fecha, como semana, mes o año, para visualizarlas mejor.

Con Laravel podemos utilizar las Colecciones para hacer la agrupación por fecha.

$entries = Entries::orderBy('date', 'desc')->get();
 
$entriesByWeek = $entries->groupBy(function ($entry) {
return $entry->date->startOfWeek()->format('Y-m-d');
});

UI de "cargando..." con Livewire.

Hay veces que ciertas acciones en el servidor toman más tiempo de lo esperado, por eso es bueno implementar una UI para que el usuario sepa que la petición todavía se está procesando.

En Journal, implementé la siguiente UI para indicar que una entrada se está guardando utilizando la directiva wire:loading de Livewire.

<form wire:submit="save">
<!-- ... -->
 
<button
type="submit"
wire:loading.attr="data-disabled"
wire:target="save"
>
<span
wire:loading.delay.remove
wire:target="save"
>Guardar</span>
<span
wire:loading.delay
wire:target="save"
>Guardando...</span>
</button>
</form>

Autenticación sin contraseña con Laravel y Livewire

Entre las tantas formas de autenticar usuarios, existe una en la que no se necesita una contraseña. Consiste en enviar una URL única por correo electrónico para completar el inicio de sesión.

Mantente al día

Recibe una notificación cuando publique algo nuevo y cancela la suscripción en cualquier momento.

Trabajo

  1. Compañía
    Yclas
    Puesto
    Ingeniero de Software
    Fecha
  2. Compañía
    Shipwork
    Puesto
    Diseñador de Producto
    Fecha
  3. Compañía
    Open Classifieds
    Puesto
    Ingeniero de Software
    Fecha