Design has become such an important skill these days. No matter how intelligent models become, we've evolved over 100s of thousands of years to detect nuance, intent, emotion. Theory of mind. We have a biological advantage here. That's why AI will never be good at Design.
Haz
@haz.dev
Co-founder @ariakit.com. Ex Automattic, WordPress. Posts about Design, JS, CSS, a11y. Neurodivergent, dad.
We've made so many improvements to @ariakit.com components over the past 3 months. I'm especially excited about the performance gains. In the next version, the new ComboboxSelect component will be twice as fast as the current Combobox + Select combination used to build selects with search fields.
Ariakit React just hit 1M weekly downloads on npm 🎉 We're just getting started. Launching something big in September/October.
If you're already managing DNS on Cloudflare, consider transferring your domains there. I just saved $160/year by moving a few domains from GoDaddy to Cloudflare.
Due to the growing number of supply chain attacks on OSS, we've limited PRs to maintainers only. But that doesn't mean contributors don't get credit. In fact, they get even more credit now by:
I don't know if it's just me, but I often struggle with walls of text that lack code examples when trying to understand code decisions. That's why I use this custom instruction in ChatGPT. It really helps me follow its line of thinking during the session and in the final output.
We just removed .nvmrc from Ariakit and let pnpm manage Node.js too. If your project already uses pnpm, you may not need a separate Node version manager. Here’s the migration:
I started watching Peaky Blinders on Netflix and realized I don't understand English at all. Without subtitles, I can't understand even 20% of what they're saying. It's like watching The Boys except everyone's Butcher. Send help!
If you're using jsdom with Vitest, consider switching to happy-dom instead. It's much faster, but it comes with one caveat: its DOM spec coverage isn't as extensive as jsdom's. That's why I was using jsdom. But there's a better approach...
After spending 60% of my weekly limit in 2 days on Claude Max, I can confidently say that Codex/GPT-5.5 is significantly more reliable than Opus 4.8. The new workflow feature is fantastic. It spawned 300+ agents and generated 130 reports on a large codebase, most valid.
Just released constate v4. It's ESM-only now. It was about time! github.com/diegohaz/con...
Release constate@4.0.0 · diegohaz/constate
ESM-only package BREAKING if you load constate via require(), a <script src="https://unpkg.com/constate"> UMD tag, or a bundler that resolves package entries through the legacy main/module/types fi...
github.com
I’m testing the ChatGPT app on iOS. I can connect to my VPS over SSH, which is nice, but it doesn’t support worktrees, so I can’t really parallelize multiple tasks. How are you all handling this?
Not gonna lie, I love Astro, but the Astro/Cloudflare migration from v5 to v6 has been the most painful one I've ever gone through, even with help from Opus 4.7 and GPT 5.5. Am I the only one?
Best decision I made while working in the Codex app was archiving a chat as soon as the work is finished. You can still recover it if needed (I needed once), but seeing only my active chats in the UI really helps reduce mental overhead. Highly recommend.
I've generally avoided posting about AI on Bsky. I think that's because there was a lot of negative sentiment around AI here early on. Is that still true? Is it okay to talk about AI here now?
Pull requests have become a serious attack vector in open-source projects. Sadly, until GitHub comes up with a better solution, restricting them to collaborators only is the best move.
I'm considering this for all my open-source projects. I prefer a detailed issue/discussion. I don't mind if it's AI-generated as long as it's valid and heads in the right direction. High-quality PRs from external contributors are much rarer, whether they're from humans or AI.
Do we still use `process.env.NODE_ENV !== "production"` for Node.js libraries these days, like for dev-only warnings, or is there a better way to handle this?
Firefox has been moving fast lately. Many of the bug reports I'm following have been fixed. And 151 will finally support CSS container style queries. Firefox already has the fastest CSS engine of the big three. If it catches up on features too, it might become the best browser.
Lost 20kg (44lbs) over the last 10 months. Body fat went from 28% to 18%. Visceral fat dropped to healthy levels. I've been exercising daily. Now the problem is that my weight keeps going down even though I'm not trying. My original goal was to lose only 15kg (33lbs). Has anyone gone through this?
Tailwind CSS tip: If you need to create separate entry points for generated CSS files (for example, if you have an internal route with a lot of custom utilities), do this: global.css ``` @import "tailwindcss"; @source not "./internal"; ```
My experience with GPT-5.5 has been good so far. It feels more reliable than Opus 4.7. However, it's still disappointing in some ways. I'm using it to improve performance on @ariakit/tailwind, and even with full test coverage and a robust automated performance test, it couldn't push beyond 5%.
Is this a strategy to get people to buy domains, or maybe even a scam? I received an email from a Chinese domain registry service saying that a Chinese company wants to register Ariakit domains with the `.cn` TLD. I responded that we have nothing to do with it.
So the Axios attack started with a video call with the maintainer. I guess that’s the first time I’ve seen the upside of social anxiety. I’ll always try to get people to do things async before hopping on a call, and I’m fine with missing out otherwise.
Ways to mitigate npm supply chain attacks: - Block all postinstall scripts unless necessary - Use minimumReleaseAge - Set up Trusted Publisher on npm/GitHub - Disallow npm tokens - Require 2FA for all org members - Restrict PRs to collaborators only (sadly) What else?
8 months later, finally migrated to the .com 🎉 (we're still working on the new version)
I picked up the .com in a domain auction (the previous owner let it expire) 😀 Should I redirect it to .org or make .com the main?
I'm considering this for all my open-source projects. I prefer a detailed issue/discussion. I don't mind if it's AI-generated as long as it's valid and heads in the right direction. High-quality PRs from external contributors are much rarer, whether they're from humans or AI.
Tailwind autocomplete would be more useful if multiple related tokens were grouped under their parent token. It would make it much easier to discover and navigate between them.