seedfaker-core 0.4.0-alpha.1

Core library for seedfaker — deterministic synthetic generator for realistic, correlated, and noisy test records
Documentation

seedfaker-core

Core engine for seedfaker.

For the CLI, install seedfaker. For language bindings, see the library docs.

CLI · Node.js · Python · Browser/WASM · Go · PHP · Ruby · MCP

Pre-1.0 notice: The API may change between minor versions until 1.0.0 is released. Pin your version and check CHANGELOG.md before upgrading.

Highlights

  • 200+ fields, 17 groups, 68 locales with native scripts
  • Context mode, corruption simulation (15 types, 4 levels)
  • Multi-table FK support (Fk/FkDeref column types)
  • Dependencies: getrandom, itoa

Usage

use seedfaker_core::{hash_seed, field, pipeline, locale, rng::Rng};

let seed = hash_seed("demo");
let locales = locale::resolve(&[]).unwrap();
let f = field::lookup("email").unwrap();
let dh = pipeline::field_domain_hash(seed, f, "");

let mut ctx = seedfaker_core::ctx::GenContext {
    rng: Rng::derive_fast(dh, 0),
    locales: &locales,
    modifier: "",
    identity: None,
    tz_offset_minutes: 0,
    since: seedfaker_core::temporal::DEFAULT_SINCE,
    until: seedfaker_core::temporal::default_until(),
    range: None,
    ordering: field::Ordering::None,
    numeric: None,
};
let mut buf = String::new();
f.generate(&mut ctx, &mut buf);
// buf contains a deterministic email

Documentation

License

MIT