ProductDocsArchitectureBlogGitHubGitHubGet Started
Available

Getting Started

Build and run your first Krishiv query in embedded mode.

Prerequisites

  • Rust 1.80+ (2024 edition)
  • Cargo and the just command runner
  • Python 3.10+ and maturin for Python bindings

First Query — Embedded Mode

Embedded mode runs entirely in-process. No daemon or cluster is needed.

use krishiv_api::{Session, Result};

#[tokio::main]
async fn main() -> Result<()> {
    let session = Session::embedded().await?;
    let result = session.sql("SELECT 42 AS answer").await?.collect().await?;
    println!("{result:?}");
    Ok(())
}

Python Quickstart

maturin develop --manifest-path crates/krishiv-python/Cargo.toml
import krishiv as ks

session = ks.Session.embedded()
df = session.sql("SELECT 42 AS answer")
df.show()

CLI

cargo run -p krishiv -- sql --query "SELECT 1 AS value"
cargo run -p krishiv -- explain --query "SELECT 1 AS value"
cargo run -p krishiv -- jobs

Validation Commands

cargo check --workspace
cargo test --workspace
cargo test -p krishiv-runtime
cargo clippy --workspace --exclude krishiv-python -- -D warnings
cargo fmt --check