@dreamlake/dreamdb
v0.1.1
Published
TypeScript protocol SDK for DreamDB — multimodal versioned data lake
Keywords
Readme
@dreamlake/dreamdb
TypeScript driver for DreamDB — a storage and retrieval protocol for multimodal signals anchored to a shared timeline.
Install
npm install @dreamlake/dreamdbQuick start
import { Dataset, Schema, MemoryBackend } from '@dreamlake/dreamdb'
// Define a schema
const schema = new Schema()
schema.addEmbedding('embedding', 16)
schema.addImage('image', 'jpeg')
schema.addScalarCategorical('label')
// Create a dataset (in-memory for testing, or use S3Backend for production)
const backend = new MemoryBackend()
const ds = await Dataset.create('my-dataset', schema, backend)
// Append samples
await ds.appendMany([
{ embedding: new Float32Array([...]), image: new Uint8Array([...]), label: 'cat' },
{ embedding: new Float32Array([...]), image: new Uint8Array([...]), label: 'dog' },
])
// Vector query — find the 5 nearest neighbors
const batches = await ds.iterVector({
field: 'embedding',
query: new Float32Array([...]),
topK: 5,
})Browser usage
import { S3Backend, Space } from '@dreamlake/dreamdb'
const backend = new S3Backend('https://your-bucket.s3.amazonaws.com')
const space = new Space(backend)
// Resolve a ref to its manifest
const manifest = await space.resolveRef('my-dataset')
console.log(manifest.tracks)Documentation
License
MIT
