Because nobody has yet invented a compelling way to write JavaScript applications, so people keep trying. We're still waiting for the Ruby on Rails of frontend development. I'm not saying Ruby on Rails is the best backend framework (I don't use it anymore), but when it came around everybody understood that it was getting something right. It popularized a new model for server-side web development that all other commun…
How about Sails? It's pretty damn good for Javascript as a Rails alternative, even uses some of the same context.
As far as I know (GitHub is down, cannot confirm) Sails is still running Express 3 (the maintainers are supposedly upgrading to 5), has a variety of other major issues with respect to its ORM, Waterline, and is a bit lacking on the "contemporary best practices" front. Long story short, it's broadly (perhaps unfairly, perhaps not) considered dead or dying.
There aren't any viable Rails alternatives for Node. (Flask, Sinatra, on the other hand? — sure. You'll have no trouble finding a good micro-framework.)
ThinkJS, Adonis and Strapi are the only entries I've seen in the Rails/Laravel/Django space, but they all have problems too -- to wit, ThinkJS recommended hashing passwords with MD5 (!!!) on their front page until quite recently, Adonis is aggressively NIH, and Strapi uses Waterline, which is (by many accounts) bad at just about everything.
There's also Nodal, which I've heard good things about, but it's limited to APIs with Postgres.
https://news.ycombinator.com/item?id=10821986
http://thinkjs.org http://adonisjs.com http://strapi.io http://nodaljs.com