basalt

BI & notebooksNativeGA

Basalt tables, in your notebook.

Install the Python SDK and load any view into a DataFrame. Results stream over Arrow, so large reads stay fast.

Setup
1 min
Delivery
Read-only
Throughput
1 GB/s
Since
v1.1
Overview

How it works.

The SDK reads views over Arrow Flight and returns pandas or Polars DataFrames without a copy. A %%basalt cell magic runs SQL inline, and subscribe() yields new rows as they land.

KAFKA TOPICSBASALTVIEWSSERVEpayments.v3orders.v1refunds.v2ORDERED LOGpayments_liverevenue_by_minAPI3.1 MS
Setup

Set it up in three steps.

01

Connect the tool

pip install basalt and log in once. The SDK reads your token from the environment or from basalt auth login.

terminal
# authorize this notebook kernel
basalt connect jupyter --role analyst
✓ token written to ~/.basalt/credentials
✓ SDK basalt 2.3.0 · Arrow Flight ready
02

Shape it with a view

Write plain SQL over the source. Basalt keeps the view current with every record and tracks lineage back to the topic, partition and offset.

views/revenue_by_min.sql
CREATE MATERIALIZED VIEW revenue_by_min AS
SELECT date_trunc('minute', ts) AS minute,
       currency,
       sum(amount) AS revenue,
       count(*)    AS payments
FROM payments
WHERE status = 'captured'
GROUP BY 1, 2;
03

Read it from anywhere

Every view is an endpoint the moment it exists. Call it over REST, connect with any Postgres client, or use the SDK from your app.

terminal
curl https://api.basalt.dev/v1/views/revenue_by_min?limit=5 \
  -H "Authorization: Bearer $BASALT_TOKEN"
✓ 200 OK · 5 rows · served from eu-north-1 in 3.1 ms
Included

What you get.

01

Arrow transfer

Results stream as Arrow batches, so a million rows load in about a second.

02

pandas and Polars

Call to_pandas() or to_polars() on any result with no conversion step.

03

Cell magic

%%basalt runs SQL in a cell and binds the result to a variable.

04

Live subscribe

subscribe() yields new rows as they land, for live plots and checks.

Related

Other ways to stream in.

All integrations →
Beta

Anthropic

AI & ML

Give Claude live, row-level context through a typed tool.

Beta

OpenAI

AI & ML

Embed events as they land and store vectors beside the rows.

Partner

Hex

BI & notebooks

Query views from SQL cells and keep notebooks current.

Get started

Set your data in stone.

Free up to 10M events a month. No card, no sales call. Your first pipeline is live in about four minutes.

2,400+ teams in production

SOC 2 Type II

38 regions

Get started

Set your data in stone.

Free up to 10M events a month. No card, no sales call. Your first pipeline is live in about four minutes.

2,400+ teams in production

SOC 2 Type II

38 regions

Get started

Set your data in stone.

Free up to 10M events a month. No card, no sales call. Your first pipeline is live in about four minutes.

2,400+ teams in production

SOC 2 Type II

38 regions

© 2026 Basalt Labs

All systems normal

Back to top ↑

404

© 2026 Basalt Labs

All systems normal

Back to top ↑

404

© 2026 Basalt Labs

All systems normal

Back to top ↑

404

Create a free website with Framer, the website builder loved by startups, designers and agencies.