August 2025
-
πItβs time for modern CSS to kill the SPA
-
πThis blog is under 14kb
-
πCSS flexbox vs grid: complete guide & when to use each
-
πJavaScript broke the web (and called it progress)
July 2025
-
πHow to make MPAs that are as fast as SPAs
-
πSPAs were a mistake
-
πAnnouncing Rolldown-Vite
-
πPhoenix LiveView + Headless UI
June 2025
-
πLivewire and Inertia: how we love and use both
-
πEmbed React, Svelte, or Vue in Phoenix LiveView without sacrificing Elixir simplicity
-
πPlain Vanilla
-
πStop using REST for state synchronization
-
πFrontends are hard
May 2025
-
πImprove UX with LiveView page transitions
-
πNetwork optimization (4x WS message size reduction) for sending lots of data from server to client (LiveView)
-
πPerformance optimization when adding 12,000+ markers to the map that renders fast with Elixir, LiveView, and Leaflet.js
-
π₯Emitting native click events in Vue 3
-
πPhoenix with Inertia.js vs LiveView
-
πIKEAβs web fonts
-
πHow to build a GitHub-style markdown editor
-
πThe Inverted reactivity model of React
-
πCommon syntax constructs in Vue 3 and Svelte
-
π₯Understanding $emit vs defineEmits in Vue 3
-
π₯Improving flash message dismissal with Tailwind animations
-
π₯Scroll events and infinite pagination in Phoenix LiveView