Welcome to τ (tau)
τ is a high-performance, embeddable temporal database engineered from the ground up to make working with time-series data intuitive, efficient, and safe.
It is built in Zig and designed for performance-critical systems that need to reason about data as it changes over time.
Why τ?
The name comes from the Greek letter τ (tau), often used in physics to represent time constants or intervals. Our database treats time as a first-class citizen.
The Core Primitives
τ's power comes from a set of four simple, composable primitives:
- Tau (τ): An immutable delta representing a value valid for an explicit time range.
- Schedule: A chronologically ordered collection of related Taus, forming a single timeline.
- Frame: A container that groups multiple schedules together, representing a complete, multi-faceted state.
- Lens: A powerful, zero-copy transformation that acts as a virtual view or a real-time data migration.
This unique, event-sourced architecture allows you to query not just the current state, but the entire history of your data with ease.
Quick Start
Get up and running with τ in just a few steps.
1. Install τ
Follow the Installation Guide to build τ from source using Zig.
1git clone https://github.com/tau-db/tau.git
2cd tau
3zig build2. Run the Server
Start the τ server in one terminal. It will listen for clients on 127.0.0.1:7828.
1zig build run-server3. Use the REPL
In a new terminal, connect to the server using the REPL client and start sending commands.
1# Start the REPL
2zig build run-repl
3
4# Connect to the server
5τ> .connect
6Connected to 127.0.0.1:7828
7
8# Create a schedule and add data
9τ> create_schedule my_sensor
10OK
11τ> append my_sensor 42.0 1000 2000
12OKNext Steps
Dive deeper into the world of τ:
Getting Started Guide
A full, step-by-step walkthrough of installing and using τ for the first time.
Core Concepts
Learn about the fundamental primitives that make τ unique: Tau, Schedule, Frame, and Lens.
API Command Reference
A detailed reference for all available database commands.
Configuration Guides
Learn how to configure storage backends and other server settings.