Pro

Solutions

It's up to you what do you use but as a default you have the very best

Webpack

I used to choose Sprockets Rails for bundling assets. I'd use it still but it doesn't deal well with node modules which is a must nowadays. Webpack has all tools needed for static files.

Electron, Cordova

You can use Electron to generate cross platform desktop clients of your app. For mobile use Cordova.

Backbone.Events

Dispatcher is a simple concept. It doesn't really matter if you use EventEmitter from Node.js or Events from Backbone.

Imba

There's nothing else like Imba. Among others it's a language with syntax thought to deal with DOM in a component way which transpiles to JS. It outperforms other solutions and will make you question if you need native versions of your application at all. The lack of complete documentation is a huge drawback. I know it'll change soon.

Of course the most popular component based solution is React and I'll be glad to accept pull request with this alternative.

Pure JS Object as Store

Currently it's hype on immutable data and "time travelling". It looks cool but honestly in most cases it's not needed. Basically pure JS object is fine for storing data - and there's no simpler and faster way than mutating. If you need features like undo/redo you should be able to run them on particular attributes instead of whole store.

Anyway I'll be glad to see integrations like Redux.

Primus

Primus is an ultimate solution for websockets on Node.js. You can choose from many different engines or plugins.

I'd like to see implementation of thin communication layer in Elixir to have such results or even better.
Or Java...

Disque

Disque is in-memory message broker. It's made by the same guy as Redis.

Ruby

I've implemented consumer in Ruby as it's my "native language". Each job is served in a separate thread. I've used concurrent-ruby with it's C extensions for MRI. It gave stunning results in benchmarks.

I'd like to see consumers in other technologies like Python or Node.js.

CONTACT ME AT MAD@MANIAK.PRO. I NEED YOUR QUESTIONS.