> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ellomas.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Built-in Generators

> Complete reference of all built-in generators.

# Built-in Generators

Seedling ships with 40+ built-in generators organized by domain.

## Strings

| Generator  | Description               | Example Output                  |
| ---------- | ------------------------- | ------------------------------- |
| `Email`    | Realistic email address   | `jane.doe_42@example.com`       |
| `Name`     | Full name                 | `Alice Johnson`                 |
| `Username` | Username string           | `alicej_92`                     |
| `Phone`    | Phone number              | `+1-555-123-4567`               |
| `UUID`     | UUID v4                   | `a1b2c3d4-e5f6-...`             |
| `ULID`     | ULID (sortable unique ID) | `01ARZ3NDEKTSV4RRFFQ69G5FAV`    |
| `String`   | Random string             | `xq7mK2pL`                      |
| `Lorem`    | Lorem ipsum text          | `Lorem ipsum dolor sit amet...` |

## Numbers

| Generator        | Description               | Parameters                        |
| ---------------- | ------------------------- | --------------------------------- |
| `RandomInt`      | Integer in range          | `min`, `max`                      |
| `Serial`         | Sequential counter        | `start`, `step`                   |
| `Constant`       | Fixed value               | `value`                           |
| `WeightedChoice` | Weighted random selection | `choices` (map of value → weight) |
| `FloatRange`     | Float in range            | `min`, `max`, `precision`         |
| `Numeric`        | SQL numeric/decimal       | `precision`, `scale`              |

## Dates

| Generator       | Description               | Parameters             |
| --------------- | ------------------------- | ---------------------- |
| `Now`           | Current timestamp         | —                      |
| `Timestamp`     | Timestamp in range        | `min_date`, `max_date` |
| `DateGenerator` | Date in range             | `min_date`, `max_date` |
| `TimeAgo`       | Relative past time        | `max_duration`         |
| `BusinessDays`  | Business days calculation | `start_date`, `days`   |

## Geography

| Generator     | Description                    |
| ------------- | ------------------------------ |
| `Latitude`    | Random latitude (-90 to 90)    |
| `Longitude`   | Random longitude (-180 to 180) |
| `Country`     | Random country name            |
| `CountryCode` | ISO 3166-1 alpha-2 code        |
| `City`        | Random city name               |
| `Address`     | Full street address            |
| `PostalCode`  | Random postal/ZIP code         |

## Network

| Generator   | Description              |
| ----------- | ------------------------ |
| `IPv4`      | Random IPv4 address      |
| `IPv6`      | Random IPv6 address      |
| `MAC`       | Random MAC address       |
| `URL`       | Random URL               |
| `UserAgent` | Random user-agent string |

## Finance / Media

| Generator  | Description                      |
| ---------- | -------------------------------- |
| `Currency` | Currency code (USD, EUR, GBP...) |
| `Amount`   | Monetary amount                  |
| `Company`  | Company name                     |
| `JobTitle` | Job title                        |
| `FileName` | File name with extension         |
| `ImageURL` | Image URL                        |

## Special

| Generator  | Description                              |
| ---------- | ---------------------------------------- |
| `Bool`     | Random boolean                           |
| `Null`     | Always produces NULL                     |
| `Sequence` | Auto-incrementing (for `serial` columns) |
| `FKPool`   | FK lookup from parent table              |
| `SelfFK`   | Self-referencing FK with multi-pass      |
