1 comments

  • pmbanugo 20 hours ago
    Hey thanks for posting here!

    I built Demitter to solve a problem I kept thinking about recently: how to easily share events between Node.js processes without the complexity of setting up Redis, RabbitMQ, or other heavyweight message brokers? It uses ZeroMQ for messaging and MessagePack for serialization, ensuring high performance even at high event frequencies.

    What it does:

    - Takes the familiar `emitter.on()` and `emitter.emit()` API you may already know in Node.js - Makes it work seamlessly across multiple processes/machines - Zero configuration required: just `npm install demitter` and go

    Don't take my word for it, see it in action:

    I created a live auction demo where multiple bidders run in separate terminal windows, all bidding in real-time on the same auctions. Watch it in action: https://www.youtube.com/watch?v=LqQShQ9-dsk – it's pretty satisfying to see ~7 processes staying perfectly synchronized in real-time.

    Where I you might use it:

    - Worker processes needed coordination without complexity - You want to scale Socket.IO or WebSocket servers without heavy message brokers - any other need for pub/sub across Node.js processes.

    I built this because I wanted a lightweight solution that didn't compromise on the familiar Node.js event API. Existing solutions felt too heavy for simple pub/sub, and I wanted to keep the Node.js event API developers already know.

    I'd love to hear your thoughts on this approach. Is it something you would find useful? What other use cases do you think it could solve for you?

    I'm in EU and it's very late here, so I'll catch up on comments tomorrow.