#classnames
Like the rest of the library, Workspaces are unstyled out of the box. Style them using classNames OR render your own tabs and toolbar buttons
October 31, 2026 at 4:45 PM
A quik-style resumability approach would be interesting, though would still require some double encoding.

There are some potential and documented ways to cut down on the explicitly static stuff like classnames. I’ve bugged the team about it for years but there are higher leverage fixes to be done
October 10, 2026 at 6:23 PM
Less time reinventing css classnames and refactoring class structure, more time to work on the actual UX
October 7, 2026 at 4:33 PM
a next.js thread: an ai-generated fix shortens css module classnames to a five-character hash, calling collisions effectively impossible. a reply runs it on two different real inputs and gets one hash for both.

https://github.com/vercel/next.js/discussions/87463
September 29, 2026 at 7:25 AM
On the hashed classnames bit, yes but we also generate exact file paths and line numbers as a list and put that in a data attribute during development so it’s easy to see exactly where the styles are coming from and in what order.

Debugging in production is a bit worse, admittedly.
September 16, 2026 at 3:50 AM
As fans of your work, happy to explain.

But in a line: “tailwind as a compile target so you don’t have to learn a whole new set of syntax for CSS properties you already know”

Or “use CSS like inline styles, get classnames with a compiler”
September 16, 2026 at 2:36 AM
I found a new purpose for Claude 😀
September 14, 2026 at 6:53 PM
🚀 GitHub Intelligence Drop

classnames (JavaScript • 🟢)
⭐ 17.8K → https://github.com/JedWatson/classnames

chrome-extensions-samples (JavaScript • 🟢)
⭐ 17.7K → https://github.com/GoogleChrome/chrome-extensions-samples

⚡ Only signal. Zero noise.
September 1, 2026 at 2:54 AM
I wouldn't know where to start with this right now D: I'm afraid this is the main problem of using css-in-js, a core part of react native. To solve this, I would need to add explicit theme hooks / markers / classnames to each relevant component.

This will be part of a future refactor[...]
See complete post at app.wafrn.net
app.wafrn.net is a Wafrn server. Wafrn is a federated social media inspired by Tumblr, join us and have fun!
app.wafrn.net
August 17, 2026 at 5:43 PM
Oops! All classnames
March 10, 2026 at 10:40 PM
genuinely tailwind would be less worse than the bsky special because at least the classnames have a "meaning" instead of being just a hash of the used styles ON TOP OF, for some fucking reason, inlining styles everywhere, wasting even more in the process
January 24, 2026 at 12:48 AM
if your classnames get too crazy you can always fall back to (s)css. utility classes actually turn out be a pretty good way of using css in most cases though! tiny tiny CSS bundles, and everything colocated. but it can definitely get out of hand
January 8, 2026 at 8:59 PM
1. Probably because it’s used RN for Web.

2. It’s probably not a problem, because some recent benchmarks suggest it might actually be *faster* than classNames for the browser to render.
November 22, 2024 at 6:45 AM
@lukeed.bsky.social I use clsx and this week a coworker asked how you made it faster than classnames. do you remember how you made it ~2x faster? The general approach seems similar. Is there specific compiler optimization you’re taking advantage of?
January 23, 2025 at 12:52 PM
if you give your elements background colors and borders, it'll make a lot of things more obvious

bonus: add a `:before` or `:after` that has `content: attr(class)` and you'll see your classnames printed out on the elements!
April 11, 2025 at 5:36 PM
Oh man... CSS Classnames mit einem führenden Punkt zu schreiben, ist auf einem Smartphone mit Text"Korrektur"... nervig!
December 26, 2024 at 7:57 PM
All diese Mühe und Probleme, nur weil Backend Devs auf dem Gebiet der Frontend Devs mitspielen zu müssen... https://github.com/WordPress/gutenberg/issues/38719
Explore options to add back semantic classnames to block ...
Description As noted here, and here the move to random cl...
github.com
December 23, 2024 at 10:17 PM
I still think what gql.tada/GraphQLSP achieves is ahead of its time. Being able to give verifiable rules for an embedded DSL at all times.

Imagine this working for classNames, cross-referencing dom ids,…

Could help avoid a lot of issues
July 1, 2026 at 1:10 PM
On another issue, having to come up and keep track of classnames is annoying too. Yes, maybe I should try using tagnames, but they're not particularly good for readability (need to scroll up to remember their purpose & semantics)
August 13, 2026 at 1:12 PM
Although, I'm not sure how this would work with nested snippets. It could get quite unwieldy to generate classnames for snippet-scoped, snippet-scoped, snippet-scoped, component-scoped styles. Maybe <style scoped> shouldn't be able to touch the stuff inside a {#snippet} being nested?
August 5, 2026 at 12:44 PM
I'd also like className to be more like the other frameworks, wish they'd support clsx or classnames. Would even be a backwards compatible change.
June 27, 2025 at 11:21 AM
Not exactly sure what you mean. But I think it's pretty common practice to style every component as opposed to passing things from parents. I sometimes pass overriding classnames though
December 17, 2024 at 12:16 PM