Now generate fake data directly from CLI through fake-rs

65 points akhilgod

I recently contributed a CLI interface to a fake data generator project fake-rs that heavily relied on macros to reduce boiler plate code. It can generate fake data across different languages and domains from terminal.

The project was fun to contribute and learned alot in writing rust macros, lifetimes elision, Cow - copy on write.

A fun stat. It's 275x faster compared to python's popular fake generator in generating 1000 random names.

❯ hyperfine -N --warmup 1 "fake -r1000 Name" ".venv/bin/faker -r1000 -s1 name"
Benchmark 1: fake -r1000 Name
  Time (mean ± σ):       2.7 ms ±   1.3 ms    [User: 1.4 ms, System: 1.1 ms]
  Range (min … max):     1.1 ms …   5.2 ms    1126 runs

Benchmark 2: .venv/bin/faker -r1000 -s1 name
  Time (mean ± σ):     744.8 ms ±   6.1 ms    [User: 720.3 ms, System: 24.0 ms]
  Range (min … max):   734.1 ms … 755.4 ms    10 runs

Summary
  fake -r1000 Name ran
  274.69 ± 132.87 times faster than .venv/bin/faker -r1000 -s1 name