gitwtfhub

wtf is h5i-db?

h5i-dev/h5i-db — explained in plain English

Analysis updated 2026-07-25

6RustAudience · developerComplexity · 3/5LicenseSetup · moderate

TL;DR

A fast, embedded database for financial time-series data. It runs with no server, tracks every data version so you can undo mistakes, and is designed to work smoothly with AI coding agents.

Mindmap

mindmap
  root((repo))
    What it does
      Embedded database
      Time-series data
      Versioned writes
    Performance
      Presorted by time
      4.5x faster than DuckDB
      Immutable segments
    Key features
      Point-in-time reads
      Restore past versions
      Reject bad data
    AI agent support
      Database summary command
      Preview mutations
      Cap result sizes
    Limitations
      Single node only
      Requires time column
    License
      Apache 2.0

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Store and query historical market data for backtesting trading strategies without accidentally using future data.

REASON 2

Roll back a bad data import to a previous working state with a single command.

REASON 3

Let an AI agent inspect database schemas and query financial data without overwhelming its context window.

REASON 4

Compute financial aggregations on tens of millions of rows faster than general-purpose data tools.

What's in the stack?

RustPythonCLI

How it stacks up

h5i-dev/h5i-dbcanack/huesmithcodeitlikemiley/service_template
Stars666
LanguageRustRustRust
Last pushed2024-06-12
MaintenanceDormant
Setup difficultymoderatehardmoderate
Complexity3/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires installing a Rust-based CLI or Python library and your data must have a time column for the database to function.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice and state any changes.

Wtf does this do

h5i-db is an analytical database built specifically for quantitative finance and time-series data. It is written in Rust and runs embedded in your project, meaning there is no separate server to set up or manage. You install it as a command-line tool or a Python library, and it stores data in a single directory on your machine. The database focuses on speed for financial workloads. The developers report that on a benchmark of 20 million rows computing common financial rollups, it runs over 4.5 times faster than well-known data tools like DuckDB and Polars. It achieves this by storing data presorted by time, which lets it skip sorting large datasets during queries. It also caches metadata aggressively because data segments are immutable once written. A core feature is versioning. Every write creates a new committed version of the data, and you can read any past version instantly. This means if you ingest bad data, you can restore to a previous state with a single command. The system also supports point-in-time reads, which let you pin a query to a specific timestamp so your results never include data that arrived later. This matters in finance research, where accidentally using future data can invalidate a trading strategy. The project is designed with AI agents in mind. A single command returns a full summary of the database: table schemas, sizes, time ranges, and any pending operations. Mutations like deletions can be previewed before they are applied, and a data policy can reject malformed rows automatically. Query results can be capped to avoid overwhelming an agent's context window, with overflow rows spilled to files instead. Error messages include suggested next actions and typo corrections. The developers are clear about limitations. h5i-db is single-node and embedded, so it is not suited for distributed multi-terabyte warehouses or high-concurrency transactional workloads. It also assumes your data has a time column, since the entire design depends on a time index for its performance and features. The project is open source under the Apache 2.0 license.

Yoink these prompts

Prompt 1
I have historical stock price data in CSV files. Help me install h5i-db as a Python library, create a table with a time column, and import the data.
Prompt 2
Show me how to use h5i-db to do a point-in-time read so I only see data available before a specific date, to avoid look-ahead bias in my backtest.
Prompt 3
I imported bad data into my h5i-db database. Walk me through listing previous versions and restoring to the last good commit.
Prompt 4
Set up h5i-db for an AI agent workflow: show me the command to get a full database summary and how to cap query results so they fit in an agent's context window.

Frequently asked questions

wtf is h5i-db?

A fast, embedded database for financial time-series data. It runs with no server, tracks every data version so you can undo mistakes, and is designed to work smoothly with AI coding agents.

What language is h5i-db written in?

Mainly Rust. The stack also includes Rust, Python, CLI.

What license does h5i-db use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice and state any changes.

How hard is h5i-db to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is h5i-db for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.