Skip to main content
Why I Avoid shadcn/ui: Design Homogenisation & Hype

Why I Avoid shadcn/ui: Design Homogenisation & Hype

#ui

#design

#customisation

I find it really funny how things become mainstream. Starts off as a tool to ‘improve productivity’. Faster than you know it, it has become the de-facto for almost everything.

I have found that same process happen with shadcn since the early days of its inception. I saw what they were aiming for, what they were hoping to achieve and I was not sold on the hype - the rest of the internet was.

The Homogenising of Design

Bootstrap. Do you remember bootstrap? I remember bootstrap. I remember when every site on the internet started looking the same. While I would have like to say we have reached that point with shadcn, I would be lying - we have been firmly in that place for a good time now.

As someone who works in the web for part of what I do, I can immediately see that a site was built using shadcn. It brings back that feeling of “another bootstrap site” people began to have many years ago.

In my view, the web is supposed to be exciting and a place to explore and experiment. A place where each site should have its own identity. Yes, ignoring the “best practices” on how visitors scan a site, it should still be unique in some way.

Everyone reaching for shadcn defeats that entirely.

The Language of the LLMs

One of the effects of everyone reaching for shadcn is that - much like React - what the LLMs are good at is shadcn. What you have in the end is numerous creations that are only slightly different but at the core are basically the same site.

Where The Message Got Lost

The shadcn team had good intentions. They built what they did assuming that developers actually wanted to have custom sites with custom designs. What ended up happening was a majority of the adopters of the library (I know they don’t call it that) used it as is and customised nothing.

To my knowledge, they have even gone further and made a starting flow where you customise your components before you’ve even installed them.


Wrapping Up

I have nothing against shadcn. I am simply not swayed by hype cycles and what is perceived as the current ‘in-thing’.

I have used shadcn, one of the projects featured on my site uses it. But you would need to have an observant eye to notice which one.


Thank you for reading, let’s connect!

Thank you for visiting this little corner of mine. My email and DMs are always open; if you want to chat or collaborate on something, shoot me a email

Where you can get hold of me:

Back to articles