What do large-scale Next.js apps usually use for styling — Tailwind CSS or plain CSS? And which UI libraries are most commonly used? #78051
Replies: 3 comments
-
Have you thought about the HeroUI library? |
Beta Was this translation helpful? Give feedback.
-
Just some loose thoughts... I'll re-order them later.. Large projects, depends... some companies have their own in-house design system, it can be CSS only, or with some component support, and then what you typically have to do is, find headless/style-less components, like radiux-ui, which you can customize with your company design system. I think maintaining, and scaling accordingly in aspects such as, a11y, performance, SEO, reliability and usability, are things that you have to consider. Do you want to spend most time maintaining a design system, than developing features? Tailwind can make things a lot faster, at least initially. People have strong opinions on Tailwind's impact on CSS learning, and such, but from a productivity point of view, it definitely boosts the average developer's CSS output. One issue with Tailwind in Next.js' SPAs kind of pages, is that, the more of it you use, the more the root CSS file, loaded by all files, will have to include. And from the making components side of things, radix-ui, react-aria, etc, all of these headless/styless libraries, give you a11y compliant, performant, etc, components, that you can style/tweak yourself, with either Tailwind or CSS modules, etc. Personally, I think CSS Modules are the way to go, they complement Tailwind well, but are capable of standing on their own. If you don't have time, budget, or a team that can maintain such components, then you should focus on delivering value, and instead, pick components off-the-shelf. I personally don't like frameworks such as MUI for this purpose, because, your app will look just like any other MUI app... these are useful to get stuff working, quickly, with styles and all, but then it is hard to customize into your own. |
Beta Was this translation helpful? Give feedback.
-
Hello! Great questions! Choosing the right styling and UI component strategy is essential for large-scale projects. While all the solutions mentioned can work well, each comes with its own strengths and trade-offs depending on your feature support, project’s requirements, team expertise, and the consistency in approach. I really appreciate what @icyJoseph shared; it’s a solid perspective. I'd like to add a few more points that are especially important in the context of large-scale applications:
In summary, the best choice depends on striking a balance between your team's capabilities, your project's goals, and the long-term maintainability of your codebase. There's no one-size-fits-all; what matters most is choosing a consistent, scalable approach that serves both developers and users effectively. |
Beta Was this translation helpful? Give feedback.
-
Summary
Hi everyone! 👋
I'm building a large-scale project with Next.js, and I'm trying to decide the best approach for styling and UI components. I’d love to hear insights from developers working on real-world or production apps.
💡 Styling choices:
🧩 UI libraries:
Which UI component libraries are commonly used in large projects?
Any thoughts, personal experiences, or pros/cons from your own work would be super appreciated 🙏
Thanks in advance!
Additional information
No response
Example
No response
Beta Was this translation helpful? Give feedback.
All reactions