Ed .
Ed .

Reputation: 6403

Ember component libraries

I've come across a few Ember component libraries but don't see much activity in their repositories. This is raising some doubt as to whether I should use one in a brand new project.

Are people still using component libraries in new [Ember CLI] projects?

Example component libraries I've found:

Any experience with any of these lately? Any new kids on the block?

Or are you creating your own components as required?

Upvotes: 0

Views: 1288

Answers (1)

Patrick Berkeley
Patrick Berkeley

Reputation: 2286

There's not a perfect answer to this question. However, there are some factors I weigh when deciding whether or not to use a component library and which one:

  • Do I need it? Ember has a number of built-in helpers (for example input helpers) that can often do what needs to be done.
  • How many of the components that ship with the library will I use? There's nothing to gain by unnecessarily adding page weight, it will only degrade users' experience.
  • How easy is each component to override/extend? In my experience, it's inevitable when using a component library that there will be something that doesn't work the way I need it to. So it's critical the components can be extended or overridden.
  • Does the library ship with CSS? If so, is it well written and/or optional? Libraries that ship with their own styles can be a pain because the styles will likely not match the aesthetic of your application. How well the styles are written determines how much hacking you'll have to do in order to achieve the result you want.
  • How active is the development and how many stars does it have on GitHub? If the library doesn't have a lot of active support, it's likely going to quickly get outdated. This can paint you into a corner if you want to upgrade ember itself and the component library is no longer compatible. It can be a significant effort to remove/replace one of these libraries.

There are probably more things to consider, but my point is the decision should be well thought out and deeply question whether or not you need a component library at all.


I have used ember-material-lite extensively. It's a good option if you want to follow Google's Material Design spec. Another nice thing about it is you can easily override both the component JS and Handlebars files for each component in your application to extend/modify their behavior.

Upvotes: 2

Related Questions