2 ms·
React is probably what many would recommend, but since you said enterprise then please do consider Angular. It is not as trendy and cool as React, but I've use
by mattlondon 3y ago
React is probably what many would recommend, but since you said enterprise then please do consider Angular.
It is not as trendy and cool as React, but I've used angular a lot in enterprise scenarios and it has a lot going for it: everything you need is already built-in so you do not need to pull in endless crap via NPM that you now need to review/manage/check-in (i.e. you just have one dependency), it is relatively stable without many breaking changes over time (and the tooling typically auto-upgrades your code via `ng upgrade` when there are - no other dependencies need to have their upgrade managed at the same time), it has all the same bells and whistles as everything else (SSR, vite etc), on-page performance is about as good as everything else, it has a mature and accessible Web UI component library, and it is backed by Google who employ people to actually work on it. Just pick Angular v17 or whatever and get stuff done.
Unlike react that relies heavily on loads of third-party frameworks, Angular genuinely is "batteries included" so you can just start building without making endless choices and refactorings whenever your routing framework changes, or there is a security bug in your now-unmaintained form validation library, or that reactivity library is now incompatible with your local storage framework but you can't upgrade because it is incompatible with the current version a11y helper library you need to use for legal compliance reasons, or you need to change your CSS library because the UX folks prefer the padding Vs Tailwinds etc.
They also just launched a fancy new site too: https://angular.dev/ https://angular.dev/
- nnurmanov 3y agoTIL that Oracle JET is moving to support Preact with virtual dom. Initially, they used jQuery and Knockout.js. Another framework to consider. They have huge library of components; packages are well controlled.
- Raed667 3y agoDoes it still rely on rx.js?
- mattlondon 3y agoRxJS is central to how it does things - it is so tightly integrated that it is part of the single distribution as far as I know. Edit: appears it is a separate dependency in terms of package.json (along with zone.js, but I believe that is due to be removed in future versions). I would not expect any issues with managing dependency diffs between angular and RxJS though.
- Raed667 3y agoi found that it added a huge amount friction when onboarding new people to projects (circa angular 2)
- mattlondon 3y agoYeah it was a bit of a learning curve in the old days, but promises and async concepts are so prevalent now in vanilla js that most people seem to be able to handle the basics without much hassle and be at least productive. I guess it depends how crazy you go with flatmap and zips and taps etc - most code I see these days usually have very simple pipe() sections compared to several years ago.
- metaloha 3y agoAngular v17+ can use Signals instead of RxJS in a lot of cases, reducing the need to learn RxJS in great detail. State management will probably rely on behaviours for another version or two, but expect that to change as well :)