Zaczynam tworzyć zupełnie nowy projekt. Tym razem Spring + Angular 4 + jakaś biblioteka do UI. Nad tym ostatnim się zastanawiam. Na początku wybór padł na Bootstrap 4 i ng-bootstrap. Potem natknąłem się na przepisany Primefaces na najnowszego Angulara i liczba komponentów robi wrażenie.

Tak na szybko:

ng-bootstrap
+ rozwijany przez ludzi od Angulara
+ wykorzystuje Bootstrap 4, czyli natywny stos czcionek i flexbox
+ jest wiele niezależnych komponentów do Angulara i Bootstrapa (np. tabele)
- natywnie brak wielu komponentów (ale jak wyżej - są niezależne)

Primefaces
+ ma dużo użytecznych komponentów
+ w zasadzie nic nie trzeba szukać, bo większość rzeczy jest
- niektóre komponenty są słabe lub niewygodne w użyciu, np. kalendarz
- bootstrapowa skórka oparta na starym Bootstrapie i czcionkach pobieranych z zewnątrz