Documentation

Guides, tutorials, and API reference are maintained on the GitHub Wiki. For questions and discussion, join the community on Zulip.

Quick Start with Docker

The fastest way to explore ChronoLog is through our Docker image:

$ docker pull gnosisrc/chronolog:latest

$ docker run -it --rm --name chronolog gnosisrc/chronolog:latest

$ /home/grc-iit/chronolog_repo/deploy/local_single_user_deploy.sh -d -w /home/grc-iit/chronolog_install/Release

Data Model

ChronoLog organizes data around four core concepts. Understanding these is essential before working with the API.

Chronicle

A named data structure consisting of a collection of events ordered by physical time. Analogous to a topic, stream, or ledger in other systems. Each chronicle is created, acquired, and released by clients -- similar to opening and closing a file.

Event

A single data unit stored as a key-value pair. The key is a ChronoTick (a monotonically increasing integer representing the time distance from the chronicle's creation timestamp). The value is an uninterpreted byte array -- ChronoLog is format-agnostic.

ChronoTick

A monotonically increasing positive integer that serves as the event key. Represents the time distance (offset) from a chronicle's base timestamp. Physical time is the ordering mechanism -- no centralized sequencer assigns these values.

Story

A division (partition) of a chronicle -- a sorted, immutable collection of events. Stories are optimized for sequential access and serve as the unit of data movement between storage tiers. ChronoGrapher builds stories from individual events.

Guides

Tutorials

AI Integration

ChronoLog MCP Server

Model Context Protocol server for connecting AI agents to ChronoLog, part of the IOWarp Agent Toolkit. Enables LLMs to create chronicles, record events, and query time-ordered data.