Practical overview
When it fits
Use Eventeum when backend services need selected Ethereum contract events delivered through middleware rather than maintaining direct subscriptions to an Ethereum node.
Who it is for
- Backend teams connecting Ethereum contract events to microservices.
- Developers integrating blockchain event streams with Kafka, HTTP, RabbitMQ or Pulsar middleware.
Documented uses
- Monitor selected event emissions from Ethereum contracts.
- Forward contract events to a chosen middleware broadcaster.
- Manage event subscriptions through a REST API.
- Configure confirmation delays and relay fork-related or removed-event messages to downstream services.
Requirements & limits
The project is publicly available on GitHub under the Apache-2.0 license. Building requires Java 8 and Maven; Docker is listed as optional.
- Documented broadcasters are Kafka, HTTP POST, RabbitMQ and Pulsar.
- The default event store is MongoDB; SQL configuration is also documented, with SQL Server identified as the SQL database tested.
- The documented Kafka run setup uses an Ethereum node, MongoDB, Kafka and Zookeeper.
- The project supports configuring multiple Ethereum nodes and per-node connection and polling settings.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Build Eventeum from source
Compile, test and package the Java project for local development.
Before you start
- Java 8
- Maven
- A checkout of the Eventeum repository
Steps
Navigate to the checked-out repository's root directory.
Run
mvn clean package.
Expected outcome
The project build, tests and packaging are invoked through Maven.
Guide limitations
- This covers building only; running Eventeum requires separately configured services and an Ethereum node.
Configure an Ethereum node and event filters
Set node connections and define a contract event filter in Eventeum configuration.
Before you start
- An Eventeum application configuration file
- Ethereum node URL or URLs
- The contract address, event name and parameter definitions for the event filter
Steps
Configure one or more Ethereum nodes under
ethereum.nodesin the properties file; an event without a specified node uses thedefaultnode.Define a static event filter in
application.ymlwith its ID, contract address, event name, indexed and non-indexed parameter definitions, and any correlation-ID configuration.
Expected outcome
The configuration identifies nodes and specifies the contract event that Eventeum should monitor.
Guide limitations
- The documented steps cover configuration, not starting the service or confirming that events are successfully broadcast.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 14 October 2026
- Original website title
- eventeum/eventeum · Official homepage title · retained in its source language

