cross-stream 0.6.2

An event stream store for personal, local-first use, specializing in event sourcing.
Documentation

About

cross.stream is a local-first event stream store that turns any CLI tool into a reactive component. Stream data through Nushell pipelines, spawn external processes as generators, and build handlers that automatically respond to events.

Unlike traditional databases that store state, cross.stream captures the flow of events over time. This enables patterns like real-time monitoring, automated workflows, and connecting different tools through event streams. You can pipe data from one tool to another, trigger actions based on specific events, or simply log and replay sequences of commands.

Whether you're building personal automation, prototyping distributed systems, or experimenting with data pipelines, cross.stream provides a foundation for event-driven computing on your local machine.

What's an event streaming store?

If you think of an "event" like a frame in a movie—a small package on a timeline—an event streaming store is a database designed to record these frames in strict order, append-only, so they can be replayed or reacted to later.

For example, you might append a frame every time a message is posted in a specific Discord channel. You can then .cat the stream to review all captured messages, and—if you're in a Nushell session—use pipelines to filter, aggregate, or process them with a CLI tool.

Quick Start

See the installation guide to get started.

Features

  • Reactive Workflows: Build handlers that automatically respond to events as they flow through the stream
  • CLI Integration: Turn any command-line tool into a streaming component with generators
  • Nushell Native: First-class integration with Nushell for powerful data processing pipelines
  • Real-time Streaming: Subscribe to live event feeds and build responsive applications
  • Content Addressable: Efficient storage and deduplication of large payloads
  • Local-first: Your data stays on your machine, no cloud dependencies required

Connect

Join our Discord to ask questions or share ideas.

Built with 🙏💚

  • fjall: for indexing and metadata
  • cacache: for content (CAS)
  • hyper: provides an HTTP/1.1 API over a local Unix domain socket for subscriptions, etc.
  • Nushell: for scripting and interop
  • iroh: QUIC-based P2P transport for exposing and accessing streams