Janis Jansen 🌳
banner
janis.me
Janis Jansen 🌳
@janis.me
Building the future of Music @ElevenLabs (and open source CSS tools @janis.me). Previously fluid simulations @dive.

Check out surimi.dev if you like CSS and typescript.

πŸ”— janis.me
πŸ–₯️ github.com/janis-me
πŸ“½οΈ youtube.com/@janis-me
Pinned
The first version of the 🍣 surimi playground is live!

It runs the @rolldown.rs based compiler in a WebContainer, and updates the editor instantly!

Check it out! surimi.dev/playground
Compile times are bit slower than locally tho.

Also
- has type-hint support
- you can install new packages
- ...
Reposted by Janis Jansen 🌳
just a reminder that i have github sponsors if you'd like to sponsor the OSS work i do.

i maintain quite a few projects, and contribute to many more. nobody other than these sponsors pay for that. so these help a huge amount, however small πŸ™

thanks so much to those who already did ❀️
Sponsor @43081j on GitHub Sponsors
Maintainer of chai, parse5, unjs, vueuse, tinylibs, & more. One of the e18e.dev leads. Core contributor to lit and modernweb.
github.com
January 11, 2026 at 9:51 PM
1. I'm going to @beyondtellerrand.com 2026!πŸŽ‰ I've wanted to go literally for years and I can finally make it!

2. Found out the Beyond Tellerand organization is registered in my hometown, 10 mins from where I was born. The world is small.
January 9, 2026 at 11:24 AM
Oh wow glad I saw this. I was shown the short before but I skipped because.. well.. attention span. But this is really cool. Can't believe I missed that.
January 8, 2026 at 8:44 PM
A great introduction into SIMD for rust developers (and about recent hardware changes and standards)

kerkour.com/introduction...
Introduction to SIMD programming in pure Rust
I've recently tasted AMD Zen 5 CPUs (AWS' m8a instances) and... Whooaaa. Even before talking about GPUs and NPUs, the next 5 years of CPUs will be very exciting! For
kerkour.com
January 8, 2026 at 5:28 AM
Today at 19:00 CET, a friend will give a talk at the CCC about building a RISC-V CPU... In the video game factorio. If you're into that stuff:

fahrplan.events.ccc.de/congress/202...
[39c3] CPU Entwicklung in Factorio: Vom D-Flip-Flop bis zum eigenen Betriebssystem
Factorio ist ein Spiel ΓΌber Fabrikautomation - FΓΆrderbΓ€nder, Dampfmaschinen und Produktionsketten stehen im Vordergrund. Eigentlich ist das interne Logiksystem (β€žCombinatorsβ€œ) gedacht fΓΌr die Steuerun...
fahrplan.events.ccc.de
December 28, 2025 at 7:54 AM
I just want to take a moment to thank you for all your work. I've been following many of the state management work and also Waku with much joy. You and the community are a blessing for the OSS community! Thanks! What a great achievement!
December 26, 2025 at 8:28 AM
I saw a Post about that today and now can't find it again
December 23, 2025 at 3:06 PM
(I am not the benefactor here but I just wanted to share the news).

CC @en.sitnik.ru, @graphiteeditor.bsky.social
December 15, 2025 at 7:38 PM
We nominated some open source maintainers and tools to receive funding from the OSS Engineers Fund and will donate $22k to the projects we rely on at ElevenLabs! Some of these are my favorite tools I use daily that I think really deserve support like PostCSS, Graphite, ProseMirror and more.
December 15, 2025 at 7:36 PM
Reposted by Janis Jansen 🌳
To recap, NPM allows 2FA TOTP token reuse within the token’s validity window.

I reported this and was told it’s a β€œknown low-risk issue” and that they β€œdon’t consider this to present a significant security risk.”

So, let’s look at how this seemingly small issue could be leveraged by a phisher. 1/
Seems that NPM too allows TOTP reuse within the time-step window. Seen a similar issue in multiple services over the years.

Per RFC 6238, a TOTP (Time-based One-Time Password) should be single-use. Allowing reuse, even within the short-ish time window, is not ideal (shoulder surfing, phishing etc.)
December 12, 2025 at 1:08 PM
Awesome! Congrats
December 9, 2025 at 8:11 PM
Obviously I can't even pretend to understand the complexity behind that effort.
December 2, 2025 at 8:42 PM
In my wildest dreams there is a scenario where they figure out compiling bun to WASM and running it in the browser -> alternative to Webcontainers -> a bolt.new without manual nodejs API compatibility stuff? And open source!
bolt.nrw
December 2, 2025 at 8:41 PM
I just had to share that (AI enhanced) image of me in front of the ElevenLabs Branding. The design and brand are just sooo good. Especially when applied to the UI!

check it out at elevenlabs.io
December 2, 2025 at 8:31 PM
Beware, a linkedin-type post...

I'm super excited to share that I've joined ElevenLabs to work on the creative platform and music as a full-stack dev!

Music and next-gen software have been a passion for literally my entire adult life. Now I can combine them in the best way!
December 2, 2025 at 8:29 PM
Hell yes. Tom Lehrer on WMBR radio rn. Collage radio is the best.
November 27, 2025 at 9:58 AM
Unified Linux and Mac nix config βœ…
Got rid of NixGL βœ…
Will stop changing my config now that it works ❌
November 25, 2025 at 6:01 AM
Partly inspired by @tkdodo.eu's recent hot-take about tooltip components, which I could not agree more with.

tkdodo.eu/blog/tooltip...

I built my own component libraries again and again, and I wanted them to be "flexible". Now I know that's just not the way to go. Especially with AI in the loop.
Tooltip Components Should Not Exist
A look at why tooltip components are often the wrong abstraction in design systems, leading to accessibility issues, misuse, and inconsistent user experiences.
tkdodo.eu
November 23, 2025 at 8:55 PM
Does this component library exist? Maybe it's react-aria or ariakit. But IMO they're not opinionated enough?

I want 0 room for using components wrong. I want to get a type error when I forget to set an Aria attribute or use a placeholder as a label.
November 23, 2025 at 8:52 PM
The component library I want is SUPER opinionated but also mostly unstyled.

I want it to force me to do things right, like force tooltips on some components but BAN them on others.

I want it to force me to use its built-in data-attributes for styling, but also allow me to use any styling tools.
November 23, 2025 at 8:51 PM
No Matter what I tried, the CSS I wrote to use the perfers-dark-scheme query did not apply immediately, but only after the initial render was done. I assume it's the same here. (Assumuing that theme-ui actually checks the user preferences via CSS and JS. If not, that's odd?)
November 23, 2025 at 12:40 PM
No idea about theme-ui, but I built my own theme library for my website and how I ended up doing it is with a small snippet of render-blocking JS that checks the user preferences and sets a data property on the root element.
November 23, 2025 at 12:38 PM
November 23, 2025 at 8:58 AM
@uni-muenster.de I just got a spam email claiming to be PayPal (with a copycat PayPal design) from your email [email protected].

Either you were hacked or you have a very nasty student.
November 23, 2025 at 8:57 AM
Are y'all using node 'subpath imports' yet? I've been using them for a couple of months and apart for some minor inconveniences they are working super well! I never thought about going back to typescript path aliases.

If you're not, maybe you should!
November 13, 2025 at 9:52 AM