Jetstream (includes Streams (better as in Kafka IMO), a powerful KV Store and also an Object Store to store files) is really powerful. It earns much more attention than it currently has.
Jetstream is also much easier to operate than Kafka IMO. Just a simple single binary with an easy to understand config.
When your application is just some views plus some routing - then that would be a fair comparison.
But in most real world situations (SPA) it's much more: Form validation, Data Fetching, Unit Testing, Component styling, Translations, Modularization, ...
> But you probably mean: the comparison excluded some crucial details.
Exactly. You have to compare these kind of frameworks/libraries in "real world" situations and not just build two subpages and create some simple components to form an opinion. Real world single page applications need much more than just the view layer and a router.
No, it's not. You use providers on a component when you want to have a new instance of that Service when a new Component instance of that type gets created. So you have complete control over the DI.
More details here: https://angular.io/docs/ts/latest/guide/dependency-injection...
> Angular's routing seems to involve "one big routing config".
That's wrong. You can split the routing configuration just like in react-router or Aurelia. It also supports lazy loading of child routes and components. So you don't have one giant application to serve at bootup time. It is also documented really well: https://angular.io/docs/ts/latest/guide/ngmodule.html#!#lazy...
Comparing plain React with Angular and Aurelia is completely useless. You cannot write a big serious application with Form Validation, Data Fetching, Testing, etc, just with React itself. A fair comparison would be to write a whole "real world" project and then see what parts you have to use and learn to be able to write a full React application.
Besides that I'm also working on a UI solution, that will help to get better overview of your cluster: https://qaze.app/