These utility packages have kind of lost their place with the current state or programming, but…
I'm writing a port of Laravel Collections as pipe operator optimized functions.
No more Collection objects to unwrap, all primitives!
⚡ We just added deep Livewire support to Flare (@calebporzio).
If a Livewire page is slow or breaks, you can now see which components ran, where time went, and what happened inside each step.
Been going back and forth on this for Flare for a couple of days now...
Two logs in the current filter. Pin them to the bottom (because that's where new logs land) or to the top (because that's how every table works)?
Neither feels obviously right. Both feel slightly wrong 🙃
🚀 Here's another new package: Laravel Mobile Pass. 🎫
It can generate Apple Wallet and Google Wallet passes from your Laravel app. Boarding passes, tickets, coupons, store cards, loyalty cards, all through a fluent builder.
The end result on a 6 MB source map: ~100x faster and ~10x less memory usage compared to axy/sourcemap.
This is not a stab at axy's package btw (great lib we used for years). Our package is just optimized for our specific read path.
https://t.co/1G5mn6LqHh & full blogpost soon
We just released a new package: spatie/sourcemaps-lookup
It resolves JS stack frames against source maps. Flare uses it in its frame resolver.
It's 99% faster and uses 91% less memory on a 6 MB map. Took me a couple of steps to get there... 🧵
The biggest win: PHP's lesser-known (un)pack function lets you store data as raw bytes instead of PHP objects.
Each mapping is 5 ints. As an object that's ±200 bytes, but as 5 int32s in a packed string it's only 20 bytes. That's 10x less memory used!
Trying something new on Flare's line graphs: they now connect across 1-point gaps instead of breaking. Bigger gaps still stay open, and every real data point is still marked.
Looks a lot cleaner imo, curious if anyone hates it
We built a fun hackathon project at Spatie: Live at Spatie.
It's a small Laravel + React wrapper around Owntone that lets everyone in the office search for songs, add them to one shared queue, see what's playing, and control the music.
The best part: the docs site and the in-app settings share the same instructions builder. One source of truth, two surfaces. No more keeping docs & app screens in sync.
https://t.co/XNNhpGjtYa
Small thing I've been working on for Flare: an interactive installation guide that handles the full version matrix instead of cramming everything into one markdown doc. Select your Laravel version, toggle features, get the right steps, API key pre-filled if you're logged in: