NullVoxPopuli
banner
nullvoxpopuli.com
NullVoxPopuli
@nullvoxpopuli.com
Artificer of Code.

OpenSource, TC39 Signals, StarbeamJS & @emberjs.com enthusiast and advocate

Former @react.dev

Where i'm at
nullvoxpopuli.com/page/links

Projects
tutorial.glimdown.com
limber.glimdown.com

#SwarmLyfe
Queen of Blades, she/her, obv
Pinned
We have attribute autocomplete!!! 🥳
getSectionHeadingLevel's docs now has a live REPL on the page so you can mess around and try to break it

coming soon~ish: in-page REPLs for the svelte and vue implementations
December 5, 2025 at 6:31 AM
the automatic heading level (h1-h6) utility has examples for vue, svelte, and ember!

Muchest of thanks to @_jessicasachs for helping me (aka doing all of) the vue example! 🎉
December 4, 2025 at 11:31 PM
December 4, 2025 at 7:20 PM
I made some utilities for moving non-global services into the module graph so your vite bundles are more optimized

December 4, 2025 at 3:07 PM
emberjs runs in the terminal!
December 3, 2025 at 1:52 PM
You can now make terminal applications in ember!

ember-tui

Has flex layouts, and all the colors!
December 3, 2025 at 1:23 PM
New utility for use in Svelte, Ember, Vue, React, and more:

Never think about what h1-h6 tag is needed ever again.

December 1, 2025 at 2:33 PM
Isn't per-package publish-token going to be way more secure that OIDC?

Like, if a similar worm shows up again and gets access to your GH credentials and you're using OIDC everywhere, they will publish every package you own.

NPM should be pushing per-package publish-tokens.
December 1, 2025 at 1:53 PM
The logo for grok is a black hole.

Black holes are where all matter and information goes in and never comes back*, ripping apart the fabric of reality.

I feel like this is an accurate metaphor for LLMs

*Gamma ray jets may happen, but this isn't useful
November 30, 2025 at 7:49 PM
November 30, 2025 at 1:24 PM
Best app-wide state:

@service(MyState) localReference

November 30, 2025 at 1:05 AM
And people say Linux is hostile to folks

There is this thread I keep re-visiting where I was asking for help setting up remote desktop on a headless linux server, and the gnome folks were *very helpful*, polite, and all around good community members afaict

November 29, 2025 at 4:02 PM
If i ever stop coding, maybe i'll be a detective

November 29, 2025 at 1:41 AM
Polyfills are an end consumer (app dev) concern, not a library's concern
November 29, 2025 at 12:47 AM
To add to all my other points about how LLMs can't think,

LLMs are useless at StarCraft. They would be in cardboard league at best.
November 26, 2025 at 5:57 AM
I really appreciate the depth that socket.dev posts go in to:
socket.dev/blog/shai...

This is exactly what I want out of security reporting. All the details, what to look for.
Only thing missing is a tool to check "am I affected?"
November 24, 2025 at 5:45 PM
First project to write a pluggable parser for codemods and linting (w/ scope tracking) will win.

🚫 babel
🚫 typescript
🚫 biome
🚫 oxc
🚫 swc
(etc)

Testing the design is easy

Make JSX a plugin.
Don't build it in. Prove your architecture with this
November 23, 2025 at 4:28 PM
TIL that MDN has a ctrl+k search
November 23, 2025 at 1:30 AM
I use dvorak 🤷
November 21, 2025 at 5:55 PM
Ember is coming to a terminal near you!

✨ first POC: github.com/patricklx...
✨ currently only Text component , will add more from Ink 🙂
✨ just starts directly with node for dev, no precompile.
November 21, 2025 at 5:16 PM
in ember-primitives 0.44.0, there is a new <Heading> component, which will automatically set your h1-h6 level, at any depth in the DOM (and even from within shadow-roots)

This can be handy for shared components, where they don't know what section-heading level they'll be under

November 21, 2025 at 5:46 AM
on macOS

> watch ...
watch: command not found

---------

macOS is unserious
November 20, 2025 at 11:05 PM
Reposted by NullVoxPopuli
November 20, 2025 at 12:53 PM
This question open to all of @vuejs.org , @svelte.dev , @react.dev (and whichever other frameworks have hierarchical render-based context / dynamic scope)
Can somebody explain why folks don't feel they need Context in plain JS functions but need it in components?

All the same issues apply to functions and their argument passing, and the need to drill arguments down many layers of the stack.

What makes components different?
November 20, 2025 at 5:34 AM
Can somebody explain why folks don't feel they need Context in plain JS functions but need it in components?

All the same issues apply to functions and their argument passing, and the need to drill arguments down many layers of the stack.

What makes components different?
November 20, 2025 at 5:19 AM