Ryan
banner
rschristian.dev
Ryan
@rschristian.dev
Implicit "It depends" | Open Sourced Shenanigans http://github.com/rschristian | @preactjs.com stuffs
Yup, and with Preact's wrapper (`preact-custom-element`) we support passing context between web components if you're using shadow DOM -- light DOM makes that a bit trickier and haven't quite solved that in a way I'd like yet.

So parent WC can setup a `<Theme.Provider>` and a child WC `useContext`
November 14, 2025 at 6:30 PM
There’s no global loop in Preact, no. Some behavior is scheduled for after a delay but that’s setup once as the component runs, and only as needed. If you don’t trigger rerenders then Preact isn’t doing anything.
November 13, 2025 at 2:46 PM
Depends a bit on what specifically you’re distributing, but a fairly large % of consumers IME do want something they can just drop onto a page without needing a bundler or import map. Plenty don’t use bundlers at all either.
November 13, 2025 at 1:35 PM
Generally I agree, UX should never be sacrificed in any form for DX, but there’s a million bigger & more problematic targets to go after first.

For most folks/apps using bundlers, this has no effect whatsoever. Unbundle, erasable-only TS syntax is exceptionally niche but can be useful.
November 13, 2025 at 9:17 AM
Extensions are inherently a worse option, especially in locked-down envs (like work devices).

This isn’t “burdening end users with types” anymore than forgoing build tooling is burdening users with comments; and, at the end of the day, it’s a drop in the bucket compared to analytics scripts.
November 13, 2025 at 9:17 AM
I write exceptionally little TS these days, it's exclusively at work. I do use JSX, but everything else is standards-based and can be loaded in the browser just fine.

Copy/pasting typed code into the browser console to test something will be monumentally useful though, yes. It's a PITA to strip
November 13, 2025 at 7:20 AM
I can't speak for Svelte or Solid, but that would only be an issue if you're bundling Preact into each web component made with it which absolutely wouldn't be recommended.

Bundling your runtime only makes sense for standalone widgets where you're reasonably certain the UI lib won't be duplicated.
November 13, 2025 at 5:05 AM
Obviously it's not pointless, it allows JS parsers within browsers to consume TS-style types without falling over.

I personally prefer JSDoc comments over TS-style types and so have little interest in this moving forward or dying, but saying it changes nothing is demonstrably untrue.
November 12, 2025 at 9:37 PM
Yeahhh, I found it to be super iffy too when I was trying to use it ~a year ago. Gave up after a while and went back to piecing things together.

I get it though, tricky thing to try to polyfill & I'm grateful for the attempt at least.
November 12, 2025 at 3:09 AM
Every time this comes up it amazes me that some people *don’t* do this.

I gotta proactively call out tiny oddities as by tomorrow I’ll have completely tossed out the context if someone else raises an eyebrow at them
November 11, 2025 at 6:29 PM
Reposted by Ryan
My first advice to junior contributors is to STOP using vibe coding for PRs. OSS is always about people more than about code. We don't need more code generated by LLM, we need more people who care.
November 10, 2025 at 11:47 AM
Shout out to FF for shipping that like 6-7 years ago, wonderful feature.

But yeah, maybe a bit too hopeful on my part to think browsers that still haven't added a global toggle to their settings menus would add per-site toggles 😅
November 7, 2025 at 12:28 AM
With the following _I think_ moving forward (pinging @lukewarlow.dev), we're slightly closer to getting the first item. With preferences no longer treated as global & static, it seems a browser could support adding a user-facing toggle.

github.com/WICG/web-pre...
GitHub - WICG/web-preferences-api: The Web Preference API aims to provide a way for sites to override the value for a given user preference (e.g. color-scheme preference) in a way that fully integrate...
The Web Preference API aims to provide a way for sites to override the value for a given user preference (e.g. color-scheme preference) in a way that fully integrates with existing Web APIs. - WICG...
github.com
November 7, 2025 at 12:20 AM
So angry with that, I used it last year and despite a couple obvious NextJS errors (IIRC), it was super painless and quick. By far the best experience I’ve ever had.
November 6, 2025 at 7:03 PM
Try a 34-inch ultrawide :)

Really though, that’s completely and easily solved with a `max-width` + `margin: auto`. I personally appreciate a fluid layout so long as it’s not edge-to-edge on larger screens.
November 6, 2025 at 5:27 PM
Hitting someone with the passive-aggressive "PRs welcome" outside of GitHub comments? Brutal
November 5, 2025 at 11:09 PM
Naming is hard
November 5, 2025 at 10:55 PM
Probably a casualty of removing support for credentials in URLs, parts of the old specs became intentionally ignored there for safety purposes IIRC.
November 4, 2025 at 4:37 AM
Hides them for a week only from some parts of the UI IME, a tiny step above worthless.
November 3, 2025 at 7:42 PM
Classic, English settlers bringing something to the Americas and later calling the practice weird, as if they weren’t the source.
November 2, 2025 at 5:36 PM
It might destroy his world view but I'm fairly certain "autumn" is actually Latin... regardless, English is well known for ~~stealing~~ borrowing (British Museum'ing?) words from all sorts of languages, what sort of purity does he think exists?
November 2, 2025 at 8:07 AM