I recently investigated the current state of few Meteor alternatives, so I wanted to share few thoughts.
SocketCluster + Mongo or Rethinkdb. This is what Meatier project was based on. More of a low level solution based on uWebSockets in comparison to bigger frameworks, but provides very nice scaling and close to no bloat. It’s got a commercial solution in the beta stage that takes care of the cluster management, but you can do it by yourself too. Pay attention that it’s a one man project, while all the others are backed by a company.
I consider using Mongo instead of Rethinkdb because of better server tooling, in this case the reactivity would be achieved by emiting websocket events from the function that tweaks the database state.
Sails + Mongo. Out of the box it has a pub/sub system based on events, too bad it only works with Blueprints (REST generator). There’s no option to use Rethinkdb. Sails has a new big version in alpha stage, but there are no docs for it.
Feathers + Mongo or Rethinkdb. Like Sails, it’s got a new big version in alpha stage. They’re working on it since april of 2016 though and STILL didn’t finish and that tells a lot about the framework in my opinion. At least it’s partially documented. Feathers by design don’t allow non-REST endpoints at all.
Horizon + Rethinkdb. Like Meteor, it makes you stuck to one database. Unlike Meteor, it doesn’t really work well. There’s not even an option to make a password authentication. Currently, Horizon development is pretty dead. They had a small meeting of people interested in further development few days ago though. It’s now under Linux Foundation like Rethinkdb but no idea what will happen to it.
Deepstream + Mongo or Rethinkdb. Deepstream is based on this weird idea that what we write as a server code in Meteor, should actually be just another client. Maybe it works for some people, but… man, come on.
Deepstream recently has a commercial platform DeepstreamHub which is a kind of Firebase alternative. You pay for the number of emitted messages, so be sure to divide the number at least 4 times if you want to provide any kind of data validation.
My personal gradation:
Recommended: Meteor and SocketCluster
A valid choice: Sails and Feathers
Not recommended: Horizon and Deepstream