Skip to content

Quick Start

This walkthrough takes about five minutes. At the end, Kifa is ingesting data, responding to queries, and reporting storage statistics.

  1. Build from source

    Terminal
    git clone https://github.com/xosnrdev/kifa.git
    cd kifa
    cargo cb

    See Installation for pre-built binaries and system packages.

  2. Ingest a transaction

    Pipe a JSON transaction into the ingester via stdin:

    Terminal
    echo '{"txn":"TXN-001","amount":5000,"status":"completed"}' | \
    ./target/release/kifa ingest --stdin -d ./data

    Kifa writes the entry to the write-ahead log and fsyncs it to disk. The process exits after stdin closes.

  3. Query the stored entry

    Terminal
    ./target/release/kifa query -d ./data
    Output
    2026-01-31 18:30:00 UTC {"txn":"TXN-001","amount":5000,"status":"completed"}

    Each entry is ordered by a monotonically increasing nanosecond timestamp.

  4. Check statistics

    Terminal
    ./target/release/kifa stats -d ./data
    Output
    Storage:
    Total entries: 1
    SSTables: 0
    Memtable: 1 entries
    WAL:
    Flush mode: Cautious
    Health:
    Time range: 2026-01-31 18:30:00 UTC - 2026-01-31 18:30:00 UTC