Sign in

Enzo Innocenzi

@innocenzi.dev
356 followers 54 following 122 posts

Developer experience enthusiast and cyberloafing expert. I post stuff about the Vue and PHP ecosystems. » tempestphp.com • innocenzi.dev • hybridly.dev

PostsRepliesMedia
Enzo Innocenzi @innocenzi.dev · 09/09/2026
Awesome feature. Another improvement would be to make tree view collapsible. It's quite unusable on posts with a lot of responses, we have to scroll a lot to see other top-level comments.
010
Enzo Innocenzi @innocenzi.dev · 18/03/2026
The elephant in the room
01085
Enzo Innocenzi @innocenzi.dev · 05/02/2026
Here's how to automatically redirect from npm to @npmx.dev using @kagi.com: - Go in Kagi's redirect settings: kagi.com/settings/red... - Add this rule: `^https://www.npmjs.com|https://npmx.dev` Now that's what I call good user experience!
Example Kagi query searching for "temporal polyfill" and showing the first result being npmx.dev instead of npmjs.com
3555
Enzo Innocenzi @innocenzi.dev · 06/01/2026
The next version of Tempest will have its own exception page! We previously used Whoops, but it wasn't the best experience. Credit where due, this new exception page is inspired by Laravel :)
A screenshot of Tempest's new exception page, in light modeA screenshot of Tempest's new exception page, in dark mode
130
Enzo Innocenzi @innocenzi.dev · 27/03/2025
I really love the accuracy of @kagi.com. It's refreshing to not have to scroll through 5-6 results to reach what I'm looking for, and so far the subscription is well worth it. But it's quite slow, the loading time doesn't live up to what the docs say 😓 help.kagi.com/kagi/search-...
Screenshot of a Kagi search query, showing a loading time of 1.19s
020
Enzo Innocenzi @innocenzi.dev · 17/03/2025
Tempest's website redesign is released. ✨ tempestphp.com
2313
Enzo Innocenzi @innocenzi.dev · 02/01/2025
TIL about `void` in JavaScript. It evaluates an expression and returns `undefined`, so this is useful to prevent arrow functions from leaking their return value
Two code snippets, one not using the `void` operator, and the second using it. This showcases a TypeScript error in the first snippet due to the arrow function not returning `void`.
171
Enzo Innocenzi @innocenzi.dev · 25/11/2024
A minor update to the types would be enough 👍🏻 ```ts type Channel = ChannelName | PrivateChannelName type ChannelWithId = `${Channel}:${string}` // function subscribeTo(channel: Channel | ChannelWithId) {} ```
010
Enzo Innocenzi @innocenzi.dev · 23/11/2024
I went the "list" way: I add people in certain ecosystems to a corresponding list, eg. I have an ECMAScript list with front-end, JavaScript, TypeScript people, and a PHP list with Laravel, Symfony, and broader PHP ecosystem people Lists appear next to feeds so it's easy to access
Screenshot of my feed tab
120
Enzo Innocenzi @innocenzi.dev · 09/11/2024
091
Enzo Innocenzi @innocenzi.dev · 08/11/2024
😎
43,816th
040
Enzo Innocenzi @innocenzi.dev · 08/11/2024
I think Tempest's Discovery is capable of discovering views, templates and components based on conventions I'm not sure exactly yet what it will look like though, but Discovery will help a lot, for sure
000
Enzo Innocenzi @innocenzi.dev · 05/11/2024
Right, but even with 2... it's not aligned with `<script>`, it looks weird 😭
000
Enzo Innocenzi @innocenzi.dev · 05/11/2024
The less indents, the better, in my opinion 👀 It might be more of a habit issue than a readability one? It actually puts me off if every line in SFC `script`s is indented... they feel misplaced
100
Enzo Innocenzi @innocenzi.dev · 30/06/2024
While I do agree this is an inconvenience, I would simply create a specific `PodcastProcessedSubscriber` to make things more explicit.
Code example of an event subscriber and how to register it.
010
Enzo Innocenzi @innocenzi.dev · 14/12/2023
You're missing a lot! I basically navigate my Mac through Raycast. You get a lot of utilities for free too (eg. ditched Rectangle for the built-in window management). Raycast AI is quite useful too, and there are a LOT of extensions! My most used one is the TablePlus one.
020
Enzo Innocenzi @innocenzi.dev · 17/10/2023
Not sure if related to this update but some images in posts don't show up anymore: bsky.app/profile/inno...
130
Enzo Innocenzi @innocenzi.dev · 07/07/2023
This example is not using Laravel Echo, but `pusher-js`, which I prefer because I can type what I want properly. Here's the `subscribeTo` helper:
110
Enzo Innocenzi @innocenzi.dev · 07/07/2023
👀 Random Laravel experiment: type-safe broadcasting. I implemented `HasBroadcastChannel` on an enum so I could use it in place of channel names. By using `spatie/laravel-typescript-transformer`, I can convert the enum to a TypeScript definition and make a type-safe front-end helper!
Source code for the `Channel` enumExample event using a private channel and the enum caseExample usage with `Broadcast::channel`Type-safe front-end helper
260