What is Hemera?
In a nutshell
- It's a RPC Framework for Node.js
- It's chooses simplicity and reliability over guaranteed delivery
- It's pattern driven by defining your RPC's as JSON objects
- It's very lightweight
- It's extendible via plugins (extensions, middlewares)
- It's horizontal scalable and fault tolerant
- It's very well tested
- It's built with mature packages e.g for the plugin system Avvio, logging Pino or Pattern matching Bloomrun
- It uses NATS as transport system
- It is 100% compatible with yarn, npm and pnpm
- We support Callback, Promise and Async/Await style
- We offer Docker support
- Hemera means in Greek mythology the personification of day so it must run on daily basis ;)
What's NATS
NATS is an open source, lightweight, high-performance cloud native infrastructure messaging system. It implements a highly scalable and elegant publish-subscribe (pub/sub) distribution model. The performant nature of NATS make it an ideal base for building modern, reliable, scalable cloud native distributed systems.
What is your motivation?
We want to create a toolkit which is responsible for everything expect the transport. We don't need overall transport independence. We trust in a well tested system. The wrong path in error-handling, logging and tracing are one of the reasons why we couldn't use existing solutions.
Are you the only one who use NATS for microservice architectures?
Definitely not! See here to get an impression.