
children correctly in TypeScriptLearn modern best practices for typing React children in TypeScript, including ReactNode, PropsWithChildren, ComponentProps, and why React.FC is no longer recommended.

Learn how to internationalize Next.js apps with Lingui and next-intl, covering App Router, RSC, routing, locale detection, and dynamic language switching.

Vite vs Webpack in 2025: a senior engineer’s take on performance, developer experience, build control, and when each tool makes sense for React apps.

Learn how Vitest 4 makes migrating from Jest painless, with codemods, faster tests, native ESM, browser testing, and a better DX.
Hey there, want to help make our blog better?
Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.
Sign up now
5 Replies to "A guide to theming in CSS"
This is a very cool overview of a simple way to implement. Thanks for sharing.
Thanks a lot for this amazing article. Before this article theming concept was just a nightmare for me. But Man u nailed it.
Thanks for the great article! A couple confusing parts:
– You write “ N/B: When declaring CSS variables, the syntax is **–**”… I would remove the asterisks as it’s unclear for beginners if asterisks are actually part of the syntax of your custom way of highlighting the double dash
– “ perfect for creating theme0aware websites” the 0 should be a hyphen
Thanks for pointing that out, just updated
Thank you for this very informative post! I have to admit, however, that I spent quite a few moments trying to decipher your code for the white text/black text example. It was confusing because the ‘white text’ is actually black and visa-versa. I had my eyes crossing before I realized that. Perhaps you should change the white text to say “Black Text” (since it is) or simply take away the ‘Text’ part of the string. But great content!