Package Version Hex Docs

REAM is an event-sourcing system.

The REAM server is a simple TCP server that’s receiving events from aggregators which are sending the event and a status update. The idea is:

Therefore we have three different but related storage:

The main idea is to provide an easy way for implementing aggregators and projectors to process the data we need in the way we need it.

Quick start

gleam run   # Run the project
gleam test  # Run the tests
gleam shell # Run an Erlang shell


If available on Hex this package can be added to your Gleam project:

gleam add ream

and its documentation can be found at

Architecture and Design

You can check the protocol here and how the storage is going to take place here.


Apache License Version 2.0, see LICENSE

Copyright 2023 Altenwald

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Search Document