Eleventy Notes turns 3 today π π₯³ The first version shipped on February 7th, 2023 and it's come a long way since then, lots of new features and improvements over the years. Thanks to everyone using it and helping make it better π
Posts by Sandro
> I made a serious mistake. The regex failed to capture the numbers and titles, and all 24 files were renamed to the same filename, causing 23 files to be overwritten. I'm very sorry - this data loss cannot be undone through normal means
Thanks Claude Code for deleting my files π€¦ββοΈ
Just launched Unfortunate Transitions π»
A little puzzle game where you're a poltergeist eliminating your cheerful housemate through indirect means. Built with #XState, with actor code visible in-game.
β‘οΈ unfortunate-transitions.sandroroth.com
Just launched Unfortunate Transitions π»
A little puzzle game where you're a poltergeist eliminating your cheerful housemate through indirect means. Built with #XState, with actor code visible in-game.
β‘οΈ unfortunate-transitions.sandroroth.com
Thanks π
Rebuilt my website sandroroth.com from scratch with @astro.build π
Thanks @sentry.io π
#DebugDecember
Metal parts and screws are even more fun πͺπ§
That one is from Metalkitor π¦
Absolutely, I already use it in a new project at work and it's great.
Does anyone actually use Playwright's Component testing feature? It's marked experimental for more than 3 years now π€
VSCode supports inlay hints for that (but I'm not a fan of them):
`"javascript.inlayHints.parameterNames.enabled": "all"`
π» HAPPY HALLOWEEN!! π»
Just migrate to Vitest Browser Mode π
How is this measured? For me (iOS 16 / iPhone 8) it shows a total app startup time of 1.3s, but if I record the screen and check the time it's actually 2.5s (from iOS app-icon-zoom animation completed - "New Tab" page is visible).
Yes, maybe. We'll see it when it's released.
Not sure how this would work with Parent and Child being in different files. We'll end up with circular dependencies.
And if we see context as a kind of dependency injection, I don't really care *where* the context is coming from, so binding it to a specific component doesn't feel right.
We use errors for critical things/potential bugs (e.g. button without type attribute) and warnings for things that that are okay while coding (e.g. debugger statement). Both need to be fixed before merging (max-warnings=0). Just looks a bit nicer with the different colors in the IDE.
π§© Code Puzzle, a little side project I made. Each level gives you a JS snippet split into pieces. Arrange them in the right order with drag and drop to solve the puzzle.
β‘οΈ code-puzzle.sandroroth.com
Built with #React and #XState
yep, so weird π€―
> If an attribute name is not a valid JS identifier (like a data-* attribute), it is not considered to be an error if it is not found in the element attributes type.
It's not even typed as `any`, JSX just allows them without type-checking π
Lil' code puzzle - yay or nay? π€
Today on the pod, major TS ecosystem updates: TypeScript Go gets biggest nightly update yet, Rspack announces new Rslint linter, Bun 1.2.21 features 500x faster postMessage, plus Next.js 15.5 has typed routing!
share.transistor.fm/s/0304855f
#typescript
β οΈ-Hangman in pure #TypeScript types π
Lucky you - we use a component library that often re-creates DOM elements when unstable values or callbacks are passed in π€·ββοΈ π’
Isn't that expected as Recoil is no longer maintained?
> Reproduction: I'm not lying
π
I don't have many email newsletters and just keep them in Readwise Reader. What's your workflow? Maybe you can use Kill the Newsletter.