Hacker News new | ask | show | jobs
by nwienert 922 days ago
StyleX is compiler-time only, so yes misses out on dynamic styles.

I made Tamagui a hybrid of compile and runtime, where the optimizing compiler actually handles object spreads, conditional logic, and even cross-module imports. It's really nice to get the near-0-runtime performance while maintaining all the benefits of dynamic styles.

1 comments

Hey! We support dynamic styles, too.

We're continuing to work on optimisations for StyleX, and I'll be looking at Tamagui for inspiration!

I got the impression it was not dynamic values? Just that you can combine static objects dynamically. If I’m wrong I’ll re read the docs but someone else pointed that out to me and linked part of the docs that seemed to indicate that.
It does support dynamic values.
Can you link me to how you know that? The docs seem to indicate it doesn't:

"Since StyleX depends on ahead-of-time compilation, it is important for all your styles to be statically analyzable"

"No runtime style injection."

"All styles are bundled in a static CSS file at compile-time."

---

By dynamic styles I assume we're talking about something like this:

{ backgroundColor: props.thirdPartyColor ?? randomColor() }

Cool, thanks Naman. It’s really great work overall, congrats on the launch. Maybe those couple places could have wording that indicates it supports dynamic as well.