4 ms·
I'm intrigued by the possibility of using one of these design systems in some of my own work, but I'm likewise concerned about what it means for the long-term.
by mindcrime 7y ago
I'm intrigued by the possibility of using one of these design systems in some of my own work, but I'm likewise concerned about what it means for the long-term. Especially given that I'm not really a UI person first and foremost, I worry about an excessive degree of lock-in that will be hard to back out later if needed.
I haven't tried this one yet, but I'm playing around with the IBM Carbon Design System now for an internal side-project thing... depending on how that goes, I might start using that more widely.
On that note, I'd be really curious to hear from anybody who has used Carbon, and is willing to share their thoughts, pro or con.
- RickS 7y agoI haven't used carbon as an engineer, but as someone working on design systems, they're overall pretty impressive. For a giant menu of options, see here: https://github.com/alexpate/awesome-design-systems https://github.com/alexpate/awesome-design-systems Atlassian, Lightning, Blueprint, and Polaris are some big names that could be worth checking out. And of course there's always bootstrap. > I'm not really a UI person first and foremost Using another company's component library can be a really fantastic head start, then. Especially if you've got a smaller application that doesn't require the whole kitchen sink. You can build fast with stuff that works, and if down the line you want replace it with in-house components, you've already got a north star of sorts. >I worry about an excessive degree of lock-in that will be hard to back out later if needed. It depends. If you clone the repo and it works for you, you may not necessarily have to keep it updated if you don't want to. I would worry more about being bound to abstractions that are needlessly complex – many of these systems are designed so that small changes to upstream values propagate throughout the system in very deliberate ways, which can make tweaking intermediate values a bit of a landmine. Using a big ass codebase for a couple components means you might have to go spelunking in a big ass codebase.
- mindcrime 7y agoRighteous! Thanks for the info.