UI Libraries Are Dying, Here's Why

273,994
0
Published 2024-01-13
I still get the occasional question about Material UI, Chakra, Bootstrap, and more. I think Shadcn/ui represents more than a trend, it represents a move away from UI libraries as a whole

Check out my Twitch, Twitter, Discord more at t3.gg/

S/O Ph4se0n3 for the awesome edit 🙏

All Comments (21)
  • @rianfuro4088
    Love how we went full circle on dependency management there. From copying files on the internet into our own project, to complex package management and versioning, right back to copying code from the internet into our own project 😅
  • @dancarter5595
    Excellent, now I have 40 new UI components in my codebase to maintain.
  • @UbuntuBanksie
    I’m not convinced that this is better than a UI library for small/medium scale projects
  • @quadmasterXLII
    THis is going to be hell to maintain lol. 100x boost in number of lines of code a developer can inject into the repo per hour, no change in number of lines of code a developer can read in the repo per hour.
  • @proosee
    Correct me if I'm wrong, but that seems like a one way road to unmaintainable codebase, because I can see how it is faster to build something from scratch, but changing it after time is a frightening idea, especially without proper tests. It reminds me of old days where there was that one brilliant team that decided to fork library to make few changes, years goes by and that one library is becoming a liability which no one wants to touch and it contains old bugs which were fixed & forgotten in the rest of the world. And I've seen this many, many times in different environments. If my only goal was to build one perfect app based on perfect requirements that will never change then it's fine: I will use AI tools, generate tons of code, change it a bit and I can even minimize/pack it, the heck, I don't even need a git repository! It will never change! But we all know the world doesn't work like that, requirement change or are wrongly interpreted, that's why we care about maintainability. Average dev spends 8 times more time on READING code than on WRITING code, that's why every line of code in your repository is a liability, so you need reeeaaally good reason to put one in. But, well, maybe AI tools will get smart enough to comprehend such codebases and will make changes for us, but for now, code is for humans, and humans are limited, limited in memory, limited by mistakes they make, limited in time they have, so you need to keep it simple and clean if you ever want to change it in the future.
  • @rianfuro4088
    I end up writing a lot of administration ui in my day job, so i have a different perspective on this: I don't need all of this customizability for writing those kinds of UIs because nobody cares or pays for that. What I need are UI components that look good by default and are as simple to use as possible. Bootstrap is perfect for that.
  • @RockRespawn
    Haven't watched it yet but my guess is its prolly about shadcn
  • With real projects, it's not about how quickly you can start, but how it will be maintained and developed. Second thing: a lot of indirect dependencies = hell of dependencies and problems for teams that have to use some common system design or library (for example: problem with tree shaking).
  • @SasLuca
    Nice video, tho it is not clear to me how you deal with updates if you don't use libraries anymore. To me that seems like the main point of having these as libraries/packages. If there is a bug in one of these components I am copy-pasting, and they fix it in the meantime, how do I update? How do I know there is an update? Would have been interesting to see that talked about.
  • @Descent098
    Spent a lot of time in public sector and bootstrap is %90 of what they use. We had ~1k websites at the uni I worked at, all built in bootstrap. Likewise azures power pages is all bootstrap, which was their new site builder this year. I think it's easy to get caught up in the react world, and there bootstrap is less popular, but these ui libraries are honestly still growing, just in different markets than what you see Imo
  • @filipesommer8253
    Cool insights, thanks! But am I the only one doesn't buy into the "copy instead of npm install" thing? Shadcn depends quite literally on radixUI, which itself is installed in the background for you. I wonder how many files you would need to copy if we also wanted to let users copy vs. install radix into their components
  • @rapzid3536
    I also want to toss in that I think Vercel is a blight on the OSS ecosystem. They sell hosting, period. But their VC funds have allowed them to snatch up tons of OSS projects in an effort to control the narrative, acquire mind share, and steer development towards their business model.
  • @pencilcheck
    I think it really depends on the person developing the code and who is managing it and what is the goal of the project. I would still use UI framework and library for developing UI in a foreseeable future for my projects.
  • @zzkevinlim
    everything is dying except facebook's products, am i right?
  • Javascript horoscope 2024: There will be many more meetings about which UI library to use and whether or not you should be required to build one.
  • @zekrodev
    I also started building my first pages using UI libraries like bootstrap, and I learned a lot about CSS and general DOM styling by analyzing the classes bootstrap brings. Later on I used Material UI for Agnular, and there started my aversion to these UI libraries, because you sometimes want to style things in their components a little bit differently. And to to so, you either can't entirely or you need to perform some super ugly trickery (ng-deep, I hated it so much) to modify and customize these stuff. On the other hand, there are some very nice and highly customizable component libraries out there, but then you need to literally study their way how to style and modify their components. So I just started do build my own components using Styled Components for React, which is a wonderful solution to be able to build modular components which you can copy from one project to another.
  • @MisraPreetiman
    Governments around the world still use technologies like PHP and dotnet, still relying primarily on frameworks like bootstrap (almost all Indian govt websites). They are not going anywhere, yet.
  • @JEsterCW
    The only one lib that I'm using is NextUI, shadcn is highly overhyped, basically poor overlay on top of radix, which is unwanted abstraction, still better to just use vanillia radix. I overall would make all ui components from scratch, but i dont wanna spend to much time for every common ui component cuz i want to deliver functionality. Normally i still would make a design system with ui, but ui libs like shad are only good for smaller projects.
  • I don't understand how this is better than a UI library. You can iterate fast into a hellscape of incredibly complicated code that since you've never written it yourself you don't know how it works but you also don't have the benefit of being able to pull updates from professional teams of developers whose job it is to fix bugs in these systems.
  • @oziabr
    I would really like to know what practical stuff can you make with any of your tools that I'm not able with pug+bootstrap. I've been asking around for some time, but haven't got any answers worth a second thought