Skip to main content

Event‑sourced, provenance-first framework for scientific agents and lab‑automation

Project description

Drylab (python package)

Event-sourced lab automation core library for Python.

Overview

Drylab delivers unbreakable reproducibility and an immutable audit trail for every step of the autonomous science workflows carried out by your scientific AI agents.

Drylab uses an event‐sourced ledger that cryptographically seals, schema‐validates and version‐controls every instrument readout, simulation snapshot and llm insight

  • instant provenance: trace any result back to the exact raw bytes
  • built-in verification: reject bad data before it contaminates your analysis
  • replay & branching: fork a run, tweak parameters and diff outcomes in seconds

Features

  • Event-sourced architecture for reliable lab automation
  • Schema validation and registry for lab protocols
  • SQLite-based ledger for event persistence
  • Type-safe interfaces for lab operations
  • Pydantic integration for data validation

Requirements

  • Python >= 3.10
  • Dependencies:
    • pydantic >= 2.6
    • sqlite-utils >= 3.35
    • jsonschema >= 4.22

Installation

You can install DryLab using pip:

pip install drylab

Or install from source:

git clone https://github.com/drylab/drylab-python.git
cd drylab-python
pip install -e .

Quick Start

from drylab import Reactor, Ledger

# Initialize the reactor and ledger
ledger = Ledger("lab_events.db")
reactor = Reactor(ledger)

# Your lab automation code here

Project Structure

drylab/
├── schemas/         # JSON schemas for lab protocols
├── reactor.py      # Core reactor implementation
├── ledger.py       # Event persistence layer
├── types.py        # Type definitions
└── schema_registry.py  # Schema management

Documentation

For detailed documentation, visit https://drylab.bio

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the terms of the license included in the repository.

Contact

Download files

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

Source Distribution

drylab-0.0.2.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

drylab-0.0.2-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file drylab-0.0.2.tar.gz.

File metadata

  • Download URL: drylab-0.0.2.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for drylab-0.0.2.tar.gz
Algorithm Hash digest
SHA256 f885eda9773e567fb1dcd52e701f13cfef2687fd9177461bdfdee71cf3183408
MD5 c20f504b5f692923dae08d240c89f71b
BLAKE2b-256 affb8ea23aee5de225a31c51069b3515b9000d2efe0b66311e902d31d1e5f807

See more details on using hashes here.

File details

Details for the file drylab-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: drylab-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for drylab-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6e45b326ba7ee14d73bea59e8e214a98fbc138aadaec18aae925eddfb8219c4a
MD5 3294c99b1dff79164b5e5ef5fd7a45ab
BLAKE2b-256 1ef876473bddebe445d28ed2a2f8f17e3b12781281aa3d2c57ce2d30c587e05f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page