Naming things is hard. Sometimes fun. A few class names from the current website rebuild: potato, argyle, snuggly, cushion, baking, gloomy, prick.
Jack Sleight
@jacksleight.com
Freelance full-stack, Laravel and Statamic developer. Love solving interesting problems. jacksleight.dev
After much procrastination and putting it on the back-burner I’m finally getting close to finishing my new website (only taken two years). This will also include a bunch of new artwork/icons for my @statamic.com addons.
I am happy to announce that Forte v1 is now available! Forte is my new library for parsing and modifying #laravel Blade. fortephp.com
Forte
A complete ecosystem for parsing, analyzing, and transforming Laravel Blade templates. Includes AST querying, code rewriting, formatting, and developer tools.
fortephp.com
jacksleight.dev/posts/force-...
Force Alpine component re-initialisation on hot reload
In a previous post I outlined a method for hot reloading Statamic's live preview using Alpine's Morph plugin. It works, but there's an issue: Alpine components on the page don't re-initialise when the...
jacksleight.dev
Statamic 6 is here! 🚀 A redesigned Control Panel, a modern Vue 3 + Inertia foundation, a new UI component library, a long list of architectural & performance improvements, and that's just scratching the surface. This is a new beginning, ready for what comes next. ❤️
Ever struggled to debug an intersection observer's root margin? I know I have! So I wrote a little helper that plonks a big red box over the observer's intersection area: gist.github.com/jacksleight/...
debug-root-margin.js
GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
Thoroughly enjoying @joshwcomeau.com 's Whimsical Animations course! And because I wanted extra work for some reason I’m also doing alpinejs.dev versions of all the exercises.
Got that universal single-file Blade/Livewire component experiment working pretty nicely now. Here's the repo if anyone's interested: github.com/jacksleight/...
GitHub - jacksleight/laravel-omni: Laravel package and Vite plugin for building universal single-file Blade and Livewire components.
Laravel package and Vite plugin for building universal single-file Blade and Livewire components. - jacksleight/laravel-omni
github.com
Computed Livewire properties aren't available client-side, but sometimes they'd be really useful. So I built a little utility to make that possible. Under the hood this is just dispatching an event with the data on each update. You can of course do that yourself, but I like the simplicity of this.
Unified component experiment continues. Blade components now use an inline class for props, so the syntax can be identical to Livewire. Now upgrading a Blade component to Livewire is as simple as switching “BladeComponent” for “LivewireComponent” and adding the Livewire things.
Tagged @statamic.bsky.social Bard Texstyle v3.5. Includes a handful of small but hopefully useful features: ✳️ Heading styles that can apply to any level 🫥 Ability to hide parts of text content 🎨 CP CSS for specific attribute values ☑️ A couple of other little extras statamic.com/addons/jacks...
Working on some new features for Bard Texstyle 3.5. First one is the ability to hide parts of text content, useful if you need to temporarily remove something. Hidden content is completely excluded from the rendered HTML.
So you're saying my code is perfect? That's what you're saying? Great!
"We hope you enjoyed your free trial of Twilio. Want to reactivate your app? Upgrade your account here to instantly reactivate."
Happy Friday! I’ve been chipping away at an approach to writing Blade and Livewire components that smooths out the differences between the two, letting you write and use everything the same way, and also include scripts and styles that get bundled by Vite. 1/3
Slightly thrown by Tailwind 4 referring to JS based plugins as “legacy”. The new CSS based config is awesome, but anything requiring logic or using helpers like `flattenColorPalette` still needs to be JS based. Hope they don’t disappear one day.
Stumbled on a little CSS tip. If you need an absolute value you could use `abs`, but it’s limited availability right now. However `hypot` is newly available and: > If a single parameter is provided, the result is the absolute value of its input. Or you can just use `max`, but it's more verbose.
Hey 2025! This is gonna be the year I finally rebuild my own website. 🚀 Probably. Hopefully.
Loving how quick Livewire Volt + Flux make building things! Got full CRUD, searching, sorting, pagination, validation, authorisation and toasts in a relatively tiny single file component: gist.github.com/jacksleight/... Wondering what I can improve though. What have I missed?
Volt + Flux single file CRUD
Volt + Flux single file CRUD. GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
Published a post on using my @statamic.bsky.social Distill addon to refactor content. eg. if you decide to change the structure of a set and need to update existing content to match: jacksleight.dev/posts/refact...
Refactoring Statamic content with Distill
Sometimes, it's necessary to refactor your blueprints when building a Statamic website—for example, if you decide that some sets should have a different structure. While it's easy to edit the field co...
jacksleight.dev
Published a quick @statamic.bsky.social field actions tip: jacksleight.dev/posts/adding...
Adding actions to specific Statamic fields
The recently released field actions feature in Statamic allows you to add custom actions to built-in fieldtypes. By default actions apply to every instance of a particular fieldtype, and you can contr...
jacksleight.dev
Having some fun writing a little Tailwind plugin for isomorphic(ish) 3D transforms, because why not.
Released a new Laravel package and @statamic.bsky.social addon: 🌄 Raster. They make it super simple to rasterise views to images. Automatic scaling, caching, protection and preview mode. Zero config (unless you need it). Laravel: github.com/jacksleight/... Statamic: statamic.com/addons/jacks...
Been working on a Laravel and Statamic package double-bill. Nearly ready.
Digging through an extremely old project (that's somehow still live). Who remembers the FamFamFam Silk icon pack?
I've just created a starter pack of Statamic community members you can follow! go.bsky.app/EwG6AoU
Just dropped @pestphp.bsky.social into an old (non-Laravel) PHP project. So nice to have such clean tests in what is otherwise some pretty “legacy” code. Love it!