Skip to main content

sekejap

sekejap is a graph-first, embedded multimodel database that stores your data in several forms at once: plain records, graph relationships, geographic shapes, vectors, and full text. You can query and combine them in a single SQL statement.

It runs inside your application, like SQLite, with no separate server to install or manage. Store your database on local disk for lightweight and offline use, or use S3-compatible object storage for datasets that grow beyond a single machine.

(“sekejap” is Indonesian for “a brief moment”, reflecting how quickly you can set it up and start working with your multimodel data.)

It's available as a Rust/Python/Dart/Kotlin/Swift/Java/Node.js/Go library, and a command-line tool.

📖 Documentation: docs/ — a usage guide (the query language, including the SELECT … FROM MATCH graph reference) and a developer guide (architecture diagrams, storage, indexes, invariants).

📄 Paper: the sekejap architecture and its six-category benchmark (relational · graph · spatial · vector · full-text · hybrid, vs SQLite, DuckDB, PostgreSQL/PostGIS/pgvector, Neo4j, ArangoDB, Qdrant, Redis, Elasticsearch, Solr, Meilisearch) are described in a paper submitted to CIDR 2027. Reproduction harnesses, datasets, and the measured results live in eval/.


Why you might want it

Applications often need more than one kind of database at the same time:

  • a relational store for structured records,
  • a graph database for relationships ("who is connected to what"),
  • a spatial index for location queries ("what's near me"),
  • a vector store for similarity search over embeddings,
  • a full-text search engine for matching words in text.

Running and keeping all of those in sync is a lot of moving parts. sekejap puts them in one embedded engine behind one query language, so a single query can use several of them together.

It's a good fit for:

  • Local and mobile apps — runs in-process with no server and a small footprint, so it works offline on phones and edge devices.
  • Hybrid search and RAG — rank results by combining vector similarity, geographic location, and text relevance in a single query, then follow the graph to pull in related records as context for a model.
  • On-device memory for AI — an agent or robot records what it observes (place, time, a note, a perception vector) as it happens, and later recalls it by any mix of location, similarity, and relationships — a private, queryable memory with no network round-trip.

Install

PythonPyPI

pip install sekejap                 # includes S3 support

Rustcrates.io

cargo add sekejap                   # library
cargo add sekejap --features s3     # library, with S3 support
cargo install sekejap-cli           # command-line tool

Node.jsnpm

npm install sekejap                 # prebuilt native binaries, no toolchain needed

Dart / Flutterpub.dev

flutter pub add sekejap             # or: dart pub add sekejap

Kotlin / JavaMaven Central

// build.gradle.kts
implementation("com.zebflow:sekejap:0.13.5")

Swift — Swift Package Manager (see wrappers/swift/)

// Package.swift
.package(url: "https://github.com/sekejapdb/sekejap-swift.git", from: "0.13.0")

Go — Go modules (see wrappers/go/)

go get github.com/sekejapdb/sekejap/wrappers/go

C / C++ and other native callers — the stable C ABI in wrappers/c/ (build from source; ships a single header + static/shared library).


A first look

The examples below all use the same small dataset: some tourists, the flights they arrived on, and places, restaurants, and dishes to visit and eat.

1. Create some tables

A table needs a _key column as its primary key. Other columns can be ordinary types (TEXT, INTEGER, REAL, TIMESTAMPTZ) or one of the special ones: GEO for geography, VECTOR for embeddings.

from sekejap import DB

db = DB("./bali")   # a directory on disk; created if it doesn't exist

db.execute("""
    CREATE TABLE tourists (
        _key      TEXT PRIMARY KEY,
        name      TEXT,
        home_city TEXT,
        arrival   TIMESTAMPTZ,
        taste     VECTOR          -- an embedding of what this person likes
    )
""")
db.execute("CREATE TABLE flights     (_key TEXT PRIMARY KEY, airline TEXT, duration_hours INTEGER)")
db.execute("CREATE TABLE restaurants (_key TEXT PRIMARY KEY, name TEXT, area TEXT, geometry GEO)")
db.execute("""
    CREATE TABLE dishes (
        _key TEXT PRIMARY KEY, name TEXT, price INTEGER, protein_g INTEGER,
        description TEXT, geometry GEO, open_now BOOLEAN, embedding VECTOR
    )
""")

2. Add indexes for the query types you'll use

An index makes a certain kind of lookup fast. You only need the ones your queries actually use.

db.execute("CREATE INDEX ON dishes USING spatial (geometry)")     # location queries
db.execute("CREATE INDEX ON dishes USING bm25    (description)")  # text relevance
db.execute("CREATE INDEX ON tourists USING hnsw  (taste)")        # vector similarity

3. Insert data

db.execute("INSERT INTO tourists (_key, name, home_city, arrival) VALUES ('chloe', 'Chloe', 'Melbourne', '2024-06-01')")
db.execute("INSERT INTO tourists (_key, name, home_city, arrival) VALUES ('aiym',  'Aiym',  'Almaty',    '2024-06-02')")

# A relationship (edge): tourist "chloe" flew on flight "qf-mel".
db.execute("INSERT ('tourists/chloe')-[:flew_on]->('flights/qf-mel')")

4. Run a query

Ordinary SQL works as you'd expect:

db.query("SELECT name, home_city FROM tourists WHERE home_city = 'Melbourne'")
# → { name: "Chloe", home_city: "Melbourne" }

That's the whole loop: create tables, add the indexes you need, insert rows and relationships, and query. The rest of this README shows what each data model can do, then how to combine them.


The five data models

Each section is a short, self-contained example. They build toward the last one, where several models are used in a single query.

Records and filters (SQL)

Standard SQL — SELECT, WHERE, ORDER BY, GROUP BY, aggregates.

db.query("""
    SELECT area, COUNT(*) AS n
    FROM restaurants
    GROUP BY area
    ORDER BY n DESC
""")

Relationships (graph)

A relationship between two rows is called an edge. You query edges with a MATCH pattern inside FROM. Everything around the MATCH is ordinary SQL.

# Follow one edge: which flight did Chloe arrive on?
db.query("""
    SELECT f.airline AS airline, f.duration_hours AS hours
    FROM MATCH (t:tourists)-[:flew_on]->(f:flights)
    WHERE t._key = 'chloe'
""")

The pattern reads left to right: start at a tourists row (t), follow a flew_on edge, arrive at a flights row (f). The arrow direction matters — -[:e]-> follows edges forward, <-[:e]- follows them backward.

You can follow a chain of several hops, and *1..3 means "between 1 and 3 hops":

# Places reachable within 2 "near" hops of somewhere Chloe visited.
# DISTINCT removes duplicates when a place can be reached more than one way.
db.query("""
    SELECT DISTINCT p._key AS place
    FROM MATCH (c:tourists)-[:visited]->(m:places)-[:near*1..2]->(p:places)
    WHERE c._key = 'chloe'
""")

Location (spatial)

A GEO column holds a shape (a point, line, or polygon). With a spatial index you can ask distance and containment questions.

# Restaurants within 5 km of a point (longitude, latitude).
db.query("""
    SELECT name FROM restaurants
    WHERE ST_DWithin(geometry, POINT(115.168 -8.690), 5000.0)
""")

Similarity (vector)

A VECTOR column holds an embedding — a list of numbers that captures the "meaning" of something. With an HNSW index you can find the rows whose vectors are closest to a given one.

# The 5 tourists whose taste is most similar to a given taste vector.
db.query("""
    SELECT name FROM tourists
    WHERE VECTOR_NEAR(taste, [0.9, 0.1, 0.0, 0.0], 5)
""")

Text (full-text)

For matching words in text, sekejap offers three tools:

  • ILIKE '%word%' — simple substring match (fast with a gin index).
  • BM25(field, 'query') — relevance scoring, like a classic search engine.
  • SEARCH('query') — a positional search index with typo tolerance.
# Dishes whose description is relevant to "grilled chicken", best first.
db.query("""
    SELECT name FROM dishes
    WHERE BM25(description, 'grilled chicken') > 0.0
    ORDER BY BM25(description, 'grilled chicken') DESC
""")

Time

Timestamps are ordinary columns; a few helper functions work on them.

db.query("""
    SELECT name, AGE_DAYS(arrival) AS days_here, NOW() AS current_time
    FROM tourists WHERE _key = 'chloe'
""")
# → { name: "Chloe", days_here: 5, current_time: "2024-06-06T09:00:00Z" }

Combining models in one query

This is the point of a multi-model database: asking one question that would otherwise need several systems.

"What should Chloe order for delivery right now?" — a dish that is near her, still open, in her price range, has enough protein, matches a craving, and is ranked by how well it fits both the words she typed and her taste.

db.query("""
    SELECT r.name AS restaurant, d.name AS dish, d.price AS price
    FROM MATCH (r:restaurants)-[:serves]->(d:dishes)
    WHERE d.open_now = true
      AND d.price BETWEEN 40000 AND 90000                        -- price range (IDR)
      AND d.protein_g >= 25                                      -- enough protein
      AND ST_DWithin(d.geometry, POINT(115.168 -8.690), 5000.0)  -- within 5 km (metres)
      AND BM25(d.description, 'grilled chicken healthy') > 0.0    -- matches the craving
    ORDER BY BM25(d.description, 'grilled healthy') * 0.6         -- text relevance
           + VECTOR_COSINE(d.embedding, [0.7,0.3,0.0,0.0]) * 0.4 -- taste similarity
      DESC
    LIMIT 10
""")

The WHERE clause narrows the results using the graph, spatial, scalar, and text models. The ORDER BY combines a text score and a vector score into one ranking. The whole thing is one statement.

A second example — a personal journal where each entry records a place, a time, some text, and a "mood" vector. Because the entries are just rows (and can be linked into the graph), you can search them by text, by similarity, or by time:

db.execute("""
    CREATE TABLE diary (
        _key TEXT PRIMARY KEY, author TEXT, place TEXT,
        logged_at TIMESTAMPTZ, reflection TEXT, mood VECTOR
    )
""")
db.execute("CREATE INDEX ON diary USING search (reflection)")   # search the text
db.execute("CREATE INDEX ON diary USING hnsw   (mood)")         # find similar moods

# "Where did I write about feeling small?" — text search over the entries.
db.query("""
    SELECT place, logged_at FROM diary
    WHERE author = 'chloe' AND SEARCH('small still')
    ORDER BY logged_at
""")

# "Find an earlier moment that felt like tonight." — nearest mood vector.
db.query("""
    SELECT place, reflection FROM diary
    WHERE author = 'chloe'
    ORDER BY mood <=> [0.2, 0.7, 0.1, 0.0] ASC
    LIMIT 1
""")

Data types

Type SQL keyword Stored as Use for
Text TEXT UTF-8 string names, categories, keys
Integer INTEGER 64-bit integer prices, durations, counts
Float REAL 64-bit float scores, ratings, weights
Boolean BOOLEAN true / false flags, toggles (e.g. open_now)
Timestamp TIMESTAMPTZ ISO-8601 date/time arrivals, log times
Geometry GEO GeoJSON shape points, areas, routes
Vector VECTOR list of floats embeddings (taste, mood, images)
JSON JSON arbitrary JSON nested / unstructured data
  • GEO accepts any GeoJSON geometry — Point, Polygon, LineString, MultiPolygon.
  • VECTOR is written as an array literal: [0.12, -0.03, 0.87, ...].

Indexes

An index speeds up one kind of query. Create only the ones you need.

Index USING keyword Makes this fast
Hash hash equality: field = 'x', IN (...)
B-tree btree ranges and ordering: >, <, BETWEEN, ORDER BY
GIN gin substring text match: ILIKE '%pattern%'
Spatial spatial location: ST_DWithin, ST_Contains, ST_Within, ST_Intersects
HNSW hnsw vector similarity: VECTOR_NEAR(...), <=> ordering
BM25 bm25 ranked text search: BM25(field, 'query')
Search search positional, typo-tolerant search: SEARCH('query')
CREATE INDEX ON dishes   USING spatial (geometry)
CREATE INDEX ON dishes   USING bm25    (description)
CREATE INDEX ON diary    USING search  (reflection)
CREATE INDEX ON tourists USING hnsw    (taste)

All index types survive a restart. After a large bulk load, run compact() (.compact in the CLI) so later startups are fast. A single index can be rebuilt in place with REINDEX ON <table> USING <index> (<field>).


Interfaces

sekejap has three ways to use it. They query the same database.

SQL

The main interface. A quick tour of what the dialect supports:

-- Schema
CREATE TABLE places (_key TEXT PRIMARY KEY, name TEXT, category TEXT, geometry GEO)
ALTER TABLE places ADD COLUMN rating REAL
ALTER TABLE places RENAME COLUMN category TO kind

-- Rows
INSERT INTO places (_key, name, category) VALUES ('uluwatu', 'Uluwatu Temple', 'temple')
UPDATE places SET rating = 4.8 WHERE _key = 'uluwatu'
DELETE FROM places WHERE kind = 'closed'

-- Edges, optionally with properties
INSERT ('tourists/chloe')-[:visited {rating: 4.8, hours: 2}]->('places/uluwatu')
DELETE ('tourists/chloe')-[:visited]->('places/uluwatu')

-- Graph traversal: forward -[:e]-> and backward <-[:e]-
SELECT dest._key AS place
FROM MATCH (a:places)-[:near*1..3]->(dest:places)
WHERE a._key = 'seminyak-beach'

-- Aggregation over a pattern: COUNT / SUM / AVG / MIN / MAX, and COUNT(DISTINCT ...)
SELECT p._key AS place, COUNT(DISTINCT t.home_city) AS cities
FROM MATCH (p:places)<-[:visited]-(t:tourists)
GROUP BY p._key
ORDER BY cities DESC

-- Edge properties: a named edge (-[v:type]->) exposes its rating + metadata
SELECT t.name AS visitor, v.rating AS rating
FROM MATCH (p:places)<-[v:visited]-(t:tourists)
WHERE p._key = 'uluwatu'
ORDER BY v.rating DESC

-- Multi-stage traversal: carry a result into a follow-on MATCH with WITH
SELECT d.name AS dish, COUNT(*) AS orders
FROM MATCH (c:tourists)-[:similar_taste]->(peer:tourists)
WHERE c._key = 'chloe'
WITH peer
MATCH (peer)-[:ate]->(d:dishes)
GROUP BY d.name

-- Shortest path: 0 rows if unreachable, 1 row if a path exists
SELECT a.name AS from_n, b.name AS to_n, length(r) AS hops, nodes(r) AS via
FROM MATCH SHORTEST (a:tourists)-[r*]->(b:dishes)
WHERE a._key = 'chloe' AND b._key = 'betutu-chicken'

-- Spatial, vector, and text
SELECT * FROM places   WHERE ST_DWithin(geometry, POINT(115.168 -8.690), 5000.0)
SELECT * FROM tourists WHERE VECTOR_NEAR(taste, [0.9, 0.1, 0.0, 0.0], 5)
SELECT * FROM places   WHERE name ILIKE '%uluwatu%'

-- Transactions: all statements commit together, or none do
BEGIN
INSERT ('tourists/chloe')-[:booked]->('flights/qf-mel')
INSERT ('tourists/chloe')-[:stayed_at]->('villas/seminyak-01')
COMMIT

-- Inspect the database
SHOW TABLES
SHOW EDGES FROM tourists TO places

Rust

Besides raw SQL, the Rust library has a builder API for lower-level control:

use sekejap::CoreDB;

let mut db = CoreDB::open("./bali")?;

// Restaurants within 3 km of a point (latitude, longitude, metres).
let nearby = db.collection("restaurants")
    .st_dwithin(-8.690, 115.168, 3000.0)
    .collect();

// Filter and sort.
let picks = db.collection("dishes")
    .where_gte("protein_g", 25.0)
    .sort("price", true)   // true = ascending
    .take(10)
    .collect();

// Add a plain edge.
db.link("tourists/chloe", "places/uluwatu", "visited");

// Add an edge with attributes (any names; primitives are stored efficiently).
db.link_meta("tourists/chloe", "places/uluwatu", "visited", r#"{"rating": 4.8, "hours": 2}"#)?;

Python (with pandas)

The Python library can load from and return pandas DataFrames:

import pandas as pd
from sekejap import DB

db = DB("./bali")

# Load a DataFrame as rows in a table.
df = pd.read_csv("tourists.csv")
db.df.load_nodes(df, "tourists", id_col="tourist_id",
                 mapping={"tourist_id": "_key", "full_name": "name"})

# Get query results back as a DataFrame.
result = db.df.query("SELECT * FROM dishes WHERE protein_g >= 25")

Data larger than local disk (S3)

sekejap can keep its data on S3-compatible storage and fetch pieces on demand, so you can query datasets bigger than the local disk. Works with AWS S3, MinIO, Cloudflare R2, and other S3-compatible stores.

from sekejap import DB

db = DB.open_s3("s3://my-bucket/bali",
                access_key_id="AKID...", secret_access_key="secret...",
                region="ap-southeast-1",
                cache_budget_bytes=256 * 1024 * 1024)   # in-memory cache size

# MinIO / R2 / other S3-compatible stores: point at their endpoint
db = DB.open_s3("s3://my-bucket/bali", "AKID...", "secret...", "auto",
                cache_budget_bytes=256 * 1024 * 1024,
                endpoint="https://<account>.r2.cloudflarestorage.com")

db.query("SELECT * FROM places WHERE ST_DWithin(geometry, POINT(115.168 -8.690), 10000.0)")

Command-line tool

sekejap                                   # in-memory session
sekejap ./bali                            # open a database on disk
sekejap ./bali "SELECT * FROM places;"    # run one statement and exit
echo "SELECT ...;" | sekejap ./bali       # pipe in a script

Inside the interactive session:

sekejap> CREATE TABLE places (_key TEXT, name TEXT, geometry GEO);
sekejap> SELECT * FROM places WHERE ST_DWithin(geometry, POINT(115.168 -8.690), 5000.0);
sekejap> .tables          # list tables
sekejap> .schema places   # show a table's columns
sekejap> .compact         # compact the database after a big load
sekejap> .help

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sekejap-0.16.0.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

sekejap-0.16.0-cp313-cp313-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.13Windows x86-64

sekejap-0.16.0-cp313-cp313-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sekejap-0.16.0-cp312-cp312-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.12Windows x86-64

sekejap-0.16.0-cp312-cp312-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sekejap-0.16.0-cp311-cp311-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.11Windows x86-64

sekejap-0.16.0-cp311-cp311-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sekejap-0.16.0-cp310-cp310-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.10Windows x86-64

sekejap-0.16.0-cp310-cp310-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sekejap-0.16.0-cp39-cp39-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.9Windows x86-64

sekejap-0.16.0-cp39-cp39-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sekejap-0.16.0-cp38-cp38-win_amd64.whl (5.0 MB view details)

Uploaded CPython 3.8Windows x86-64

sekejap-0.16.0-cp38-cp38-manylinux_2_28_aarch64.whl (4.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ ARM64

sekejap-0.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file sekejap-0.16.0.tar.gz.

File metadata

  • Download URL: sekejap-0.16.0.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0.tar.gz
Algorithm Hash digest
SHA256 eac128b22e0776e790d99500cf1584f420f13178dea843fa76c137d89d4da41f
MD5 de10c423a4144972cb96b230d073ef71
BLAKE2b-256 637fadbf9caef2ff8e5a57f14594d61c7f9a416dbe7133371a1ffdca7e7ae0f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0.tar.gz:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e6d1c53d2494e0f16cdd6f6837b2dc228c4b3ab3ad26e3ccc06d70fbdeb3214f
MD5 c2951b528319cadeba0566498be4c16f
BLAKE2b-256 8cb55b69284fe25fbffd885426fc0aed9863c182960e7a5f3eb3ed903774060e

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 73e4522cccdfe96a7357ffa2e73d245d02533af1de34cf74f44fe5490b5a2ff0
MD5 67d43a455c88a7d6a6ff91878448370e
BLAKE2b-256 584a8c6e10ea06fe6f640cfa368d71270333de5fa0a4b145d3ad35b9085818ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bed084a770034c57fec22806b65491e0f025ad0926251fab770dad9b694306c3
MD5 8b0743778abe7a48b1a3afea0f2478c0
BLAKE2b-256 f15e7b4f72cd335606f31e7aeab483696cecd2f8b468e176f7d9af3e81deecb2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e1310dce11ec9e4fb026cb29dfd593a2b5212476427c30df843b4bc824a4c881
MD5 eeb2233d2a5390f866dbde26465d651a
BLAKE2b-256 1f938cb4706808ec8000fd72e9d57073edd1bac8de96408b88c68db979ba9c14

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 22e3fd13704ab557645f4fde8092c24d3b7170fc068a1f04a8d63f82be62b513
MD5 0a376848ca44f0e354e6d041c0b68a60
BLAKE2b-256 08d43f32a55e5e2cb8f7d36003d5fb4e2ad43a02bd0627a4463e1d7fb3f3e438

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ed557800e526cf8d5faeb859926de54d55244a50e8b6ede9bf67afbb58aa6b4
MD5 bde794261e208743c119720392a650e8
BLAKE2b-256 e77b0856c54f34c9055e8507098e3615ce4be67c7930f19f021f7d9d48b353e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 51f4f2d71fb67a28b985e08d4ae47eccf68bf7a4c075d5d4d0b3355daac7b439
MD5 e4a7c4b7d818ed057a1577f3fe00fb0d
BLAKE2b-256 0772091ac9c902f0db1ee330850ae6a647183588938b5c5809b197de2a5d2558

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 de21451f94b3a2c405f7a7e72a4c0d5d8e43ac73ffe4ae46eed74d54b833d7d6
MD5 6456c66bc75b20ba369285ca1d1fd379
BLAKE2b-256 5e018ddcc04700918760ab91f340eb346a7a3abd3269feff9bc744de27c1fe6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0ada615cca53dc79d381cb70e1f43da1bbe55a899e14e37437161265e7d10b08
MD5 3488568d0f27744c30d9b9eb30491c15
BLAKE2b-256 389a70d39a0d130b2db7978db116c1e94cc7ca4a31668561b5ec733ece4deb17

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f8785ca7b7c52bf6a1257bd3e105ceb94e0b31c8ebdd4249da50563cd10b6a2d
MD5 5579329ac4fae0655899430dd22c6ee7
BLAKE2b-256 367bc9247132c783601ec659c24a883b0ccc9eba9940674c2e1319db5770ab53

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp310-cp310-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ab6b7e10790cb4396eb750b92878e39447eef2295b7f1899efe16fc8887ff630
MD5 8bf00d52cf6c1e40243e41556c36015f
BLAKE2b-256 c91cae726cc08addcaa0f638583a36eb38a80c7c5dd527ab0529a526123703a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 53c203887f8b94dfd109f8feeb4ab15d9b1931e905b3d37c8538339b27629d0b
MD5 c9ca25fc298d6bdbe23db6da0147112a
BLAKE2b-256 c9f352fd1d58753b39f2b99fc4ef2368d2549e92fa01da1f5a2e85b5667b6834

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 68e3046e6a07a52ac3b47d31a86a6a352ac215c9de3c63ad2dc1a2cd62f9d97f
MD5 7021ca19a00645867198062423df72b1
BLAKE2b-256 9b6f99614bc8231bebe09f975fb6bc3474e5b386c910b44ee96b346c28bc552d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp39-cp39-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 110e18c7c71dfe9b2aaca9fdac829aeba6b27fdad8d51694a792313a0be2a2ab
MD5 d07dd3ef411d3d86a05a6d6d3b1387f3
BLAKE2b-256 c1683556159cedb7e37f1af7e92858366d8613f68f9b763481a6c172c1799f13

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp39-cp39-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e8d9562905d2fa6377575903be2aff6a0ad652636fcfd4e610219c93b654dfa1
MD5 d78bc97aa299e386024e03c2776220ea
BLAKE2b-256 aff34133c111193828785a03b39ef5f264cbe855fa369d4a797c333e4d8e9698

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: sekejap-0.16.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sekejap-0.16.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b4107b81dd1284036a85347d5a6fef594dedc16747226ff356181acec510c09e
MD5 a884d78da994ac08d73dd45f3c4bab64
BLAKE2b-256 aa318392a8324ad8556903967312f3c0b39ddf1fe9744e2b0b10f415d31fc9af

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp38-cp38-win_amd64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 299762bec9d4a862d54704ea576cd7c1f9555931e54608a7c06e28148bdbc186
MD5 58af09afffda848a6a2605d8d1c7a031
BLAKE2b-256 9deca36664dda4b040a9ef406a6b02dd8343ad15b1af9ea77e03dae0ff4751fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp38-cp38-manylinux_2_28_aarch64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sekejap-0.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sekejap-0.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e8b17b41cce1e192441bf68d5f88657d90e2a59cbeabee97ab50fd31c3a60f76
MD5 dc82e6b19249007100c82774c614d40c
BLAKE2b-256 339e671308f8c98e5ae5d8df0eb42274e0d39c173e8cb6583f8198b656ad5436

See more details on using hashes here.

Provenance

The following attestation bundles were made for sekejap-0.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sekejapdb/sekejap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.16.5

19 files

0.16.4

19 files

0.16.2

19 files

0.16.1

19 files

This release

0.16.0 This release

19 files

0.15.0

19 files

0.14.0

19 files

0.13.5

19 files

0.13.4

19 files

0.13.3

19 files

0.13.2

19 files

0.13.1

19 files

0.13.0

19 files

0.12.1

19 files

0.12.0

19 files

0.11.3

19 files

0.10.1

19 files

0.10.0

19 files

0.9.1

19 files

0.8.18

19 files

0.8.17

19 files

0.8.16

19 files

0.8.15

19 files

0.8.14

19 files

0.8.13

19 files

0.8.11

19 files

0.8.10

19 files

0.8.9

19 files

0.8.8

19 files

0.8.7

19 files

0.8.6

19 files

0.8.4

19 files

0.8.2

19 files

0.8.1

19 files

0.8.0

19 files

0.7.0

19 files

0.6.7

19 files

0.6.6

19 files

0.6.5

19 files

0.6.4

19 files

0.6.3

19 files

0.6.0

19 files

0.5.3

19 files

0.5.1

12 files

0.5.0

12 files

0.4.0

12 files

0.3.0

12 files

0.2.4

12 files

0.2.3

12 files

0.2.0

12 files

0.1.8

12 files

0.1.6

12 files

0.1.5

1 file

0.1.4

1 file

0.1.3

1 file

0.1.2

1 file

0.1.1

1 file

0.1.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page