1 unstable release
| new 0.1.0 | May 14, 2026 |
|---|
#2590 in Cryptography
Used in 7 crates
99KB
1.5K
SLoC
Core types, traits, and services for the evault workspace.
evault-core is intentionally backend-agnostic. It defines:
- The domain model: variables, projects, profiles, audit entries.
- The trait contracts that every IO concern must implement, such as
MetadataStore,SecretStore,AuditSink,ManifestIo,Materializer,CodeScanner,ProcessRunner,ClockandIdGenerator. - A few value types for handling secrets safely
(see
crypto::SecretStringandcrypto::MasterKey).
Concrete implementations live in sibling crates such as
evault-store-sqlcipher, evault-store-keyring, evault-store-memory,
evault-manifest, evault-runner, evault-materializer, and
evault-scanner-regex.
Quick tour
use evault_core::model::{Var, Group, VarKind};
let v = Var::new("DATABASE_URL", Group::User, VarKind::Secret);
assert_eq!(v.name(), "DATABASE_URL");
assert_eq!(v.group(), &Group::User);
Dependencies
~1.7–2.5MB
~48K SLoC