Skip to content

fake

Module Export

fake <kind> [generator] [<options>]

Generates a fake business/demo value or an infinite generator of a given kind.

The fake macro generates a value of the kind that follows it. Without the generator keyword it produces a single value; with it, an infinite iterator of that kind.

Every kind accepts seed: text | number and locale: 'en' | 'sv'.

v1 catalog

KindOutput
firstNametext
lastNametext
fullNametext — first + last
emailtext — derived from a generated name + example domain
phoneNumbertext — locale-formatted
companyNametext
sentencetext — lorem-style sentence (locale-independent)
addressrecord { street, city, postalCode, country }
personrecord { firstName, lastName, email, phoneNumber, address }
companyrecord { name, email, phoneNumber, website, address }
productrecord { name, sku, price }

Examples

Names and contact details

import 'fake'
from fake firstName
from fake fullName { seed = 'demo' }
from fake email { seed = 3 }

A localized value

import 'fake'
from fake fullName { locale = 'sv', seed = 9 }

A coherent person record

The email is derived from the generated name and every field respects the locale:

import 'fake'
from fake person { seed = 6 }

A reproducible dataset

Use the generator form with take to build a demo dataset from a single seed:

import 'fake'
import 'iterators'
from fake email generator { seed = 42 } take 5

Accessing composite fields

import 'fake'
let a = fake address { seed = 5 }
from a.city