Headless UI Was a Bad Idea...

Поділитися
Вставка
  • Опубліковано 21 лис 2024

КОМЕНТАРІ • 35

  • @Ss-zg3yj
    @Ss-zg3yj 12 днів тому

    Dude face look like he's 40, but with a 16 years old teenager haircut 🤡

  • @airixxxx
    @airixxxx 24 дні тому +33

    This is probably one of the worst advices I have watched on UA-cam yet.

  • @tauhid97k
    @tauhid97k 4 дні тому

    I really like Headless UI. You say more control comes with more responsibility, I believe it ultimately depends on your skills. Personally, I need to ensure that I deliver the exact custom design my client requires. Having the ability to create consistent designs using custom CSS or Tailwind CSS, along with the freedom to animate elements however I choose or utilize any animation library, is a significant advantage. For those of us who are passionate about UI/UX, I think this is one of the greatest advancements in front-end development.

  • @KamuranDehliz
    @KamuranDehliz 24 дні тому +6

    You talk about depending on the project to stay viable, yet then you mention UI libraries. If the UI library dies, it’s not just about swapping components; it essentially means reprogramming the entire application.

  • @kangar1797
    @kangar1797 23 дні тому +4

    For me Headless UI is meant for people who want to just use a component library but still get to customize the styling so it doesn't look like every other app (think of the bazillion of apps using material UI).
    1:30 I do agree on the idea that a Headless UI doesn't really mean owning the code as you are still literally using a dependency.
    however i don't think most people really care about that. As long as they own the styling and can *_slightly_* tweak the behavior, they're happy
    1:53 however, i don't think this other point is really fair, the point of the Headless UI librairies *_IS_* to give that slight bit of flexibility. In the mantine example, the pagination component is a complete black box and easily styling its inner part would be fully dependent on its API. the shadcn/ui version is a *_slightly less_* black box whit a bit more control.
    Even though i see a lot of people are disagreeing completely with you in the comments. we know for a fact that many share the same feeling as you just by looking at how popular non headless UI libraries are. Ultimately these discussions are important because they show that there is not a single way to do things and that the diversity in developer needs will always create new and interesting patterns and paradigms.
    overall great content!

  • @_purple_44_
    @_purple_44_ 23 дні тому +5

    Bro should watch his videos before uploading

  • @mhoyle95
    @mhoyle95 24 дні тому +4

    So for you personally, you want already styled components because you don't enjoy or as you have claimed you are not great at UI/UX design. That's fine, but its purely a personal decision. as someone who has a background in front end design I was delighted that there was no styling already to override which can be a pain.
    Further more, its completely open source so you DO own the code, you can maintain and change things that you like or just do a complete fork if you know what you are doing. Even if it did get abandoned, many people use it and will probably be forked and taken over by another team.

  • @codedusting
    @codedusting 24 дні тому +7

    1. You need to learn design then.
    2. In shadcn, you own the code. In Mantime, you don't. So no idea why that was rhe complaint point?

    • @ooijaz6063
      @ooijaz6063 23 дні тому +3

      You own the maintenance as well. Tradeoffs as always.

    • @kangar1797
      @kangar1797 23 дні тому +4

      The shadcn/ui code is dependent on Radix primitives, you don't own that. This reasoning can go on and on and is primarily based on the nature of the React (and other JS frameworks) ecosystem, which is completely based on depending on others people's code.
      There nothing inherently wrong with dependency, but if the goal is to *_"own"_* the code, then a component *_library_* is not the way to do it.

    • @codedusting
      @codedusting 23 дні тому +1

      @@kangar1797 precisely

  • @over9000andback
    @over9000andback 23 дні тому +6

    I only need 3 libraries ever: HTML, CSS and JS

    • @nicolaska1761
      @nicolaska1761 23 дні тому +2

      You never worked on a big project with deadlines then

  • @francescoanastasio2021
    @francescoanastasio2021 15 днів тому

    The biggest issue with headlessui is that in many cases it overcomplicates things that could be done with just 20 lines of plain css. Transitions for example give more problems than they solve, even implementing a complex dialog can become a nightmare and make you loose a lot of time. The lack of style, although makes sense for a UA-cam video because not everyone might be familiar with the term “headless”, it’s not the point and actually it a pro rather than a con. For solo developers, I would rather suggest to invest a considerable amount of time and think of their own design system and write their own reusable components, so when you need something you know where to find it and how to tweak it.

  • @tylerjnewman
    @tylerjnewman 23 дні тому +1

    Like the other comments say, this is worse than bad advice because it has the semblance of good advice. The video is logically inconsistent with the reasons why it prefers a UI library, citing less bloat or difficulty handling the component. I don’t feel the presenter has coded enough to know how much easier it is to work with shadcn and radix rather than trying to customize a library where every is abstracted away from the developer

  • @reze_dev
    @reze_dev 23 дні тому

    To be honest, shadcn is the best ui library i ever found. You can build something fast with so many components. Skipped the video after 1 minute

  • @nomadshiba
    @nomadshiba 24 дні тому

    many ui libraries just reinvent things you can already do with semantic html.
    if not with tags, then with roles and aria attributes.
    you can just style those directly.
    i don’t get why you'd need a library that you style based on data-attributes and classes.

  • @janpapaj4373
    @janpapaj4373 24 дні тому +20

    L take (didn't watch)

    • @MrinmoyRoy1990
      @MrinmoyRoy1990 24 дні тому +1

      The title and tumbnail is clickbait. The actual take is not as bad.

    • @janpapaj4373
      @janpapaj4373 23 дні тому

      @MrinmoyRoy1990 doesnt deserve viewer retention then

  • @Kazeno
    @Kazeno 23 дні тому

    23 likes and 20 dislikes, thats wild

  • @endlesslysorrow
    @endlesslysorrow 23 дні тому

    соболезную братишка, что не осилил shadcn

  • @_purple_44_
    @_purple_44_ 23 дні тому +3

    How high are you?
    Me: "Headless UI's sucks"

  • @jamesgphillips91
    @jamesgphillips91 24 дні тому

    Ngl this sounds like skill issues and like you don’t understand how and why you’d want to use components like shad. I don’t miss writing it all myself that’s for sure, and ui libraries that hold your hand also keep you down in a lot of ways

  • @Stying
    @Stying 23 дні тому

    Its just a rage bait

  • @donovanfitz5204
    @donovanfitz5204 23 дні тому

    This is great advice if you never want to improve at all!
    All programmers know you have to keep learning though, you're only hurting yourself long term with this attitude.
    Honestly your job is 100% replaceable by AI if you can't even make custom components.

  • @mohammadabbas1623
    @mohammadabbas1623 24 дні тому

    Another prospective of thinking

  • @carlonolle1934
    @carlonolle1934 23 дні тому

    missed the hole point of headless ui`s, instead chooses to use component libraries that use JS most of the time that sometimes isn't even server component ready (chakraUi). You do you, i would choose Radix/Shadcn everyday

  • @miguelrubio8093
    @miguelrubio8093 24 дні тому +1

    Horrible advice, just horrible....

  • @abelbartolomeu2795
    @abelbartolomeu2795 24 дні тому +4

    Bad content bro

  • @arisudana3672
    @arisudana3672 23 дні тому

    Skill issue

  • @theBarracuda_
    @theBarracuda_ 23 дні тому +1

    L take (didn't watch)