seedfaker

Ruby binding for seedfaker — deterministic synthetic data with 200+ fields, 68 locales, same seed = same output.

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

Requirements

  • Ruby >= 3.1
  • libseedfaker_ffi shared library (built from Rust source)

Pre-1.0: API may change between minor versions. Pin your version.

Usage

require "seedfaker"

f = Seedfaker::SeedFaker.new(seed: "ci", locale: "en")

f.field("name")                                          # "Zoe Kumar"
f.field("phone", e164: true)                              # "+14155551234"

f.record(["name", "email"], ctx: "strict")               # single record
f.records(["name", "email"], n: 5, ctx: "strict")        # batch
f.validate(["name", "email:e164"])                       # check without generating

f.records(["name", "email"], n: 100, corrupt: "high")    # corrupted data

Seedfaker::SeedFaker.fingerprint                         # "sf0-..."
Seedfaker::SeedFaker.fields                              # all field names

Documentation


Disclaimer

This software generates synthetic data that may resemble real-world identifiers, credentials, or personal information. All output is artificial. See LICENSE for the full legal disclaimer.