Skip to content
CAI
Produce a survey ↗Verify a survey

itswuanran/enode

Enode is an event-driven framework for building distributed systems using the Command and Event Sourcing patterns. It provides a unified infrastructure for asynchronous command processing, domain event handling, and message queue integration across multiple backends including Kafka, RabbitMQ, and Redis. The system supports various event stores such as MySQL, PostgreSQL, MongoDB, and in-memory implementations, all configured via Spring Boot auto-configuration. The core domain and messaging layers have been modernized in Kotlin to support non-blocking, coroutine-based execution.

49.8

Weak · 4 August 2026

16k

lines of production code

Kotlin

with Java

1

bus factor · 4 authors in all

4

measurements over time

CAI band scale
CAI trend line

How it got here

2019 · Framework modernization and sample migration

The project underwent a significant architectural shift, removing legacy Java command processing and MySQL-specific schemas in favor of a multi-backend, annotation-driven framework. This period focused on rewriting message queue integrations in Kotlin, introducing new core APIs and exception handling, and replacing old samples with a modernized bank-transfer example.

26 changes

2020 · Kotlin migration and async support

The project underwent a comprehensive migration of its core subsystems—including commanding, domain, eventing, and messaging—to Kotlin, leveraging coroutines for asynchronous processing. This period also introduced extensive test coverage and configuration support for various event stores and message queues, alongside new in-memory and JDBC/PostgreSQL/MongoDB implementations.

18 changes

2021–2023 · Kotlin migration and queue integration

This period focused on migrating the framework's core domain and queue modules to Kotlin, introducing new abstractions for aggregate management and message handling. It also expanded the system's capabilities by adding support for multiple message brokers (AMQP, Ons, Pulsar, TCP, Redis) and implementing comprehensive metrics monitoring for observability.

15 changes

CAI lens gauges

Survey your own repository

itswuanran/enode was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.

Survey a repository

About this page

  • The description of this project is derived from its own commit history, not from its README.
  • The score is its highest published measurement, taken on 4 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 06bee95b1b — the exact code this score is about.
  • Scored under rubric rubric-2026.08.19. Score the same commit under that rubric and you get the same number.
CAI link cards