Hacker News new | ask | show | jobs
by ui-explorer12 2802 days ago
I looked at many of these for an assessment at my company. We started a little broader with some css-only solutions as well but they tend to only take you so far; the controls are nice. Key aspects for us were (1) React-based, (2) TypeScript support (bonus for native TS), (3) Applicable to data-dense engineering apps, and (4) a broad-based, healthy ecosystem. I also evaluated Semantic-UI React.

I really like Blueprint JS but I think we'll end up building on top of Ant Design. It's a huge collection of work; they've also started to push Ant Pro which is higher-order components targeting building of admin apps (more opinionated, more than just a UI facade).

3 comments

I'm in a similar boat as you. We actually started building on top of Ant. However, we first started out by building out our Admin pages and they were built with Blueprint.

I like Blueprint a lot more than Ant, but Blueprint doesn't pretend to support responsive applications[1], which was somewhat important to us. Blueprint exposes a couple building blocks (like PopOver) which really help in building more custom functionality. It actually looks like Evergreen be closer to Blueprint in this regard so I might piss off all the devs and evaluate Evergreen.

[1]https://github.com/palantir/blueprint/wiki/Frequently-asked-...

I've been using Blueprint and pairing it with Basscss for some responsive assistance and it's been successful (and a lot of fun).
I will look into this since I am on BP3 on a project and it seems that they will eventually want responsive support.
Can you elaborate on how this works? Thanks!
Gladly. Blueprint provides all of the "components" and I use Basscss to lay them all out in responsive containers.

I use Basscss' grid and flex helper classes to define how my I can create a 3-column responsive layout with something like:

    <div class="clearfix">
      <div class="col md-col-4">
        <SomeBlueprintComponent />
      </div>
      <div class="col md-col-4">
        <SomeBlueprintComponent />
      </div>
      <div class="col md-col-4">
        <SomeBlueprintComponent />
      </div>
    </div>
There's also a couple of other helpers like `max-width-*` which ensure responsiveness as the screen grows larger. Things like adding the `Classes.FILL` (which causes a button/control to go full width of its container) are useful for making things seem more like mobile (where buttons often are full width of the device, minus padding)

All in all, while it's a slight bummer than Blueprint isn't just responsive out of the box, I haven't really found that to be a deterrent to getting things done.

Have you looked at CxJS? CxJS offers chart controls and advanced data tables which makes it perfect for building admin apps.

https://cxjs.io/

I tried both BlueprintJS and Ant Design on two different projects I am handling.

While BlueprintJS is more intuitive, I find that it lacks a lot of built-in components compared to Ant Design.