Crates

The workspace ships eleven crates at version 0.12.1. The workspace version keeps their release numbers aligned.

CratePurpose
idiolect-recordsGenerated record types for the dev.idiolect.* lexicons; Record trait; family modules.
idiolect-codegenLexicon-driven Rust + TypeScript emitter; generated-source check; breaking-change classifier.
idiolect-lensResolve PanprotoLens records; run apply_lens.
idiolect-identityDID resolution (did:plc, did:web).
idiolect-indexerFirehose consumer with pluggable stream / handler / cursor store.
idiolect-oauthOAuthTokenStore trait and shipped impls.
idiolect-observerFold encounter-family records into observation records.
idiolect-orchestratorRead-only HTTP query API over a record catalog.
idiolect-verifyVerification runners with declarative dispatch.
idiolect-migrateSchema diff plus lens-based record migration.
idiolect-cliCommand-line tool wrapping the library crates.

Cargo manifests live under crates/<name>/Cargo.toml. Three crates — idiolect-records, idiolect-identity, and idiolect-indexer — are published to crates.io under the same name and to docs.rs at https://docs.rs/<name>/latest/<name_underscored>/. The rest are publish = false and are consumed via a git or path reference; each crate page states which applies.

Reference boundary

These pages list the exported boundaries and feature flags. Use docs.rs for the three published crates. For workspace-only crates, build rustdoc from the checkout named at the top of the page.