in other news, uhtml v5 is ready:
* it's nearly as fast as v4 for keyed results except it doesn't need specialized URLs or buils: <el key=${k} /> it is
* it's faster in non-keyed scenarios
* it has components backed into core
* components have (alien) signals reactivity
* it's 5K
31.07.2025 22:26 β π 2 π 0 π¬ 0 π 0
if I misunderstood my apologies but the described situation shows that by standard a module can import modules, it's the way it breaks and the way it cannot be asynchronous that is absurd, not the fact a module can import other modules from CDNs, that works already so I don't understand your point.
29.07.2025 06:26 β π 0 π 0 π¬ 0 π 0
last from me, in case it helps: the code you see in that post is *ALREADY RUNNING IN A SERVICE WORKER* ... it has nothing to do with SW hijacked from CDNs or whatsoever ... again, a great chance to learn more about this topic, or feel free to miss it with your wrong premises π₯²
28.07.2025 21:24 β π 0 π 0 π¬ 0 π 0
if my post was to blame, yes, it was for people knowing Service Workers already, not for people not understanding that post is about loading a CDN module *after* the Service Worker bootstrapped already
yet, the post itself, never claims the issue is 3rd party Service Worker cause that's impossible π€·
28.07.2025 21:20 β π 0 π 0 π¬ 1 π 0
no, like I've said, you have no experience with Service Workers and you think you know them already.
A good hint to stop this conversation to me and *maybe* one for you to learn more about Service Worker, I work with those daily π
28.07.2025 21:15 β π 0 π 0 π¬ 1 π 0
in short, you commented on something you have zero experience about because having Service Worker mandatory on *YOUR SERVER/HOST* is the first law of Service Workers.
28.07.2025 21:11 β π 0 π 0 π¬ 1 π 0
that's wher your logic falls apart ... like I've said, by design, service workers cannot be anywhere else but your server so your premises are not correct.
Many wished to have Service Workers as CDN link, security begged to differ, it's either your own host or nothing, and that's the solution.
28.07.2025 21:08 β π 0 π 0 π¬ 2 π 0
> If a hijacked SW loads from these ...
impossible by design unless your whole server is already compromised so I am not sure I am following, or share at all, your feelings ...
that being said, this has nothing to do with my post? π€
28.07.2025 19:56 β π 0 π 0 π¬ 1 π 0
iframe.src = `data:text/html;charset=utf-8,${yourStuff}` is *NOT* the way to go as it loses all privileges granted from the page creating such iframe.
const blob = new Blob([yourStuff], {type: 'text/html'});
iframe.src = URL.createObjectURL(blob);
though works like a charm π
28.07.2025 19:54 β π 2 π 0 π¬ 1 π 0
I am not really following ... please help landing that proposal in places where it helps landing that proposal, with all the amends you like, thank you π
24.07.2025 12:58 β π 0 π 0 π¬ 0 π 0
lovely ... would it return a file path or a URL that needs to be converted? hopefully the former!
27.06.2025 11:46 β π 1 π 0 π¬ 1 π 0
btw it's
const view = html`<button @ click=${this}>Hello!</button>`;
not
const view = html`<button @ click=${this.handleEvent}>Hello!</button>`;
handleEvent is natively "handled" by the listener
π
27.06.2025 11:38 β π 1 π 0 π¬ 1 π 0
MessageChannel, BroadcastChannel, synchronous XHR are all broken in @firefox workers: it literally blocks that worker until whatever blocking operation happens between a send data and such data returned π€¦
Only global postData works in there, watch out your advanced logic π€·
23.06.2025 19:45 β π 1 π 0 π¬ 1 π 0
I am factoring out coincident/window (soon to be updated) to fully separate concerns and provide a standalone sub-project to nail that part of the stack.
If interested, I started explaining what's behind the scene here π
github.com/WebReflectio...
10.06.2025 11:50 β π 0 π 0 π¬ 0 π 0
If you load this page it contacts 82 IP addresses executing 256 separate HTTP transactions to download 18MB of data writing 64 cookies to your device to tell you βnoβ
24.05.2025 10:37 β π 15161 π 4555 π¬ 151 π 246
using timeout = {
$: setTimeout(() => controller.abort('timeout'), 5000),
[Symbol.dispose]() {
clearTimeout(this.$);
}
};
nice and clean via Explicit Resource Management π₯³
v8.dev/features/exp...
21.05.2025 14:16 β π 5 π 0 π¬ 0 π 0
β¦ and just like that, turns out that Error cause is cloned in Chromium and ignored in WebKit (or at least Bun) π€¦
Itβs always the same: I find a cool/elegant way to solve issues via native APIs β¦ native APIs are not the same across engines π
Here is WHATWG specs to blame π’
20.05.2025 05:41 β π 3 π 0 π¬ 3 π 0
Surviving the Structured Clone algorithm
Used internally by IndexedDB, Workers and other APIs, this algorithm lacks user-land flexibility: here my proposal to fix all the issues!
hopefully I've explained it all in this post ... please help me out landing this proposal, the polyfill is already code-covered 100% and it works shamelessly workers to NodeJS or main thread context π₯³
webreflection.medium.com/surviving-th...
19.05.2025 14:41 β π 5 π 2 π¬ 1 π 0
a utility to safely invoke?
before 2016:
const { call } = Function;
const apply = call.bind(call, Function.apply);
apply(callback, context, args);
after 2016:
const { apply } = Reflect;
apply(callback, context, args);
I often forget myself I can just trap Reflect utilitiesπ€¦
16.05.2025 20:22 β π 1 π 0 π¬ 0 π 0
my ugly workaround is similar to:
let name=($,_={}.toString.call($).slice(8,-1))=>(_ in self)?_:name(Object.getPrototypeOf($));
and then
if (name(ref) === 'Object') ... loop props to do things
does anyone has a better/faster way around? π€
16.05.2025 16:14 β π 0 π 0 π¬ 0 π 0
there is one particular dance JS engines do on structured-clone algorithm to understand if a reference is a plain object (or degraded as such) or an instance of a native class (also degraded, but less so) and I wonder where on earth is that API to know if an object is "literal" !
16.05.2025 16:03 β π 0 π 0 π¬ 1 π 0
This patch is just one step forward to help me out intercepting WASM runtimesβ proxies or my own all at once! I still need brand check somehow (instanceof or other ways) but at least I wonβt see Proxy errors on postMessage on my side of affairs π₯³
16.05.2025 11:11 β π 1 π 0 π¬ 0 π 0
Pyodide is an open-source Python distribution for the browser and Node.js based on WebAssembly/Emscripten.
π Find us at https://pyodide.org
π€ Contribute at https://github.com/pyodide/pyodide
Also, find us on Mastodon @pyodide@fosstodon.org
Baseline DevRel at Google
rviscomi.dev
Independent developer/architect. JavaScript/TS, DX, automation, tooling, performance & OSS. Shell script enthusiast.
π‘ https://webpro.nl
π¦ https://webpro.blue
βοΈ https://knip.dev
π https://try.venz.dev
π https://wooordle.webpro.nl
π£ https://ansi.tools
Mostly lurking, with a passion for Python and following the frontend chaos
Curious mind. Creator of https://plnkr.co. Tech lead for extensibility at Auth0 (OKTA). I will never stop experimenting.
Platform DX at Shopify. Created #Preact. Do more with less.
#JavaScript #PreactJS #React #Frontend #DeveloperExperience #OSS #Coffee #Foxes #Drumming #Metalhead
Same me, another platform. I code stuff. It usually involves some Maths. I enjoy music mandatory religion classes warned me about. And other things that may kill me.
https://thebabydino.github.io/
I didn't come here to talk about the place we left, did you?
SPy creator, HPy founder, PyPy core dev, PyScript core dev, doing Python, compilers and WASM stuff at @anacondainc.bsky.social
Also on:
- github.com/antocuni
- https://mastodon.social/@antocuni
- https://twitter.com/antocuni
disco pervert & technology sister.
co-founder @ https://ondora.xyz
blog: https://piss.beauty
code: https://github.com/stella3d
π= ATX / NYC / βοΈ
Cartoonist and creator of The Oatmeal and Exploding Kittens https://linktr.ee/theoatmeal
goblin β’ he/him β’ patreon.com/adamtots β’ Let Me In Your Window: https://amzn.to/4l2oOFw
π¦ CSS Modules co-creator / πΏ Remix + React Router at Shopify / π§ Vanilla Extract / MelbJS organiser / dad x4
π₯ Join 45k React devs - Stay up-to-date:
π¨ ThisWeekInReact.com
Docusaurus maintainer @ Meta
Web developer - HTML / CSS / JS, node.js, preact, vanilla JS, serverless, serverful, databases, IaC
github.com/Munawwar | codepasta.com
At Carriyo, Dubai, UAE
Heβs just some dude yβknow?
you can change this track now