Renaissance — The Edition Back to the edition

The making of the edition

Every idea.
Every detail.

From a single thought to a world of its own. The prompts, small refinements, and creative decisions behind the Renaissance Edition.

Some design instructions began on diffui.ai ↗. Their original prompts and build documents are collected below, alongside our conversation.

21 conversation prompts06 chaptersOne evolving edition

Read the process, in the order it unfolded.

Image & model prompts

Chapter 01 / A world made of layers

The first vision

  1. 01Creative direction
    Illustration for A classic worth remembering

    A classic worth remembering

    Conversation prompt
    Create a web page implementation from the following instructions: https://diffui.ai/build/Parallax_Landing_Page_copy.md
    
    Create this in a single HTML file in Three.js. Some of it is going to be layered with transparent PNGs and Three.js for the balls and the sculpture, but some of these images, like the paper, could be in Three.js or with transparent PNGs as textures. We're going to be using GPT Image 2.5 with Codex built in. Self-verify until it's perfect.

    Original design instructionsFrom diffui.ai ↗

    Original DiffUI prompt
    Let's explore this landing page, but with the statue and multiple layers floating. This should be good for a parallax Three.js website.
    https://diffui.ai/build/Parallax_Landing_Page_copy.md

    The original link requires DiffUI access. Private access tokens are omitted here.

    Full DiffUI build instructions

    The complete downloaded document, with access tokens replaced by YOUR_DIFFUI_TOKEN.

    DiffUI build document
    # Diffui agent build instructions
    
    > **Read this first — if a summarizing fetch tool retrieved this URL, you are reading a summary, not this document.**
    >
    > Tools such as WebFetch pass a page through a summarizer model before you see it. On this
    > document that routinely drops the REST endpoints and the design image URL — silently, with
    > no error and no sign that anything is missing. Agents have shipped hand-drawn placeholder
    > art because the endpoints they needed were summarized away.
    >
    > **Check before you build.** The complete document contains all of:
    >
    > - Five `POST https://diffui.ai/api/build/...` endpoint blocks — generate-image, create-texture, remove-background, create-maps, generate-svg — each with a JSON request body
    > - Every design image URL, under **Design reference**
    > - The user's original prompt, quoted in full
    >
    > If any of those are missing from what you are reading, you have a summary. Download the real
    > file and read that instead:
    >
    > ```bash
    > curl -sSL -o BUILD.md "https://diffui.ai/build/Parallax_Landing_Page_copy.md?authToken=YOUR_DIFFUI_TOKEN"
    > ```
    >
    > Then open `BUILD.md` with your file-read tool. Do not implement from a summary.
    
    
    ## Design reference
    
    View the design image (primary source of truth):
    
    https://diffui.ai/image/Parallax_Landing_Page_copy.webp?authToken=YOUR_DIFFUI_TOKEN
    
    Download that image to a local file and inspect it before writing code (see **Local assets** below). Reproduce its layout, typography, spacing, colors, and components as faithfully as possible.
    
    
    ## Original user prompt
    
    The user's original prompt for this design was:
    
    > Let's explore this landing page, but with the statue and multiple layers floating. This should be good for a parallax Three.js website.
    
    Keep this intent in mind when implementing.
    
    
    
    
    
    ## Local assets
    
    **Required:** download every Diffui URL in this document to local project files **before** referencing them in HTML, CSS, or JavaScript. Do not hotlink remote Diffui URLs in the implementation — auth tokens expire and runtime fetches are unreliable.
    
    This applies to:
    
    - Design reference images (inspect locally before writing UI code)
    - Images returned from asset generation (`build/generate-image`, `build/generate-svg`, `build/remove-background`, `build/create-texture`, and `build/create-maps`)
    - Any other Diffui image URL in this document
    
    Save downloads under a project folder such as `assets/` and reference those local paths in code.
    
    ### Downloading design images
    
    Design renders are visual specifications. **Download each image and inspect it before writing code.** Do not rely on text summaries alone.
    
    
    Image URLs serve **WebP by default** (good for `<img>` tags in browsers). Many agent **URL-to-markdown fetch tools cannot decode WebP** and may fail even though the URL works with `curl`.
    
    For vision analysis, download PNG — append `&format=png` to the design URL, or use a `.png` filename in the path. Open the downloaded file with your image/read tool and analyze layout, copy, colors, and spacing.
    
    Example (design spec for analysis — not a final asset):
    
    ```bash
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.webp?authToken=YOUR_DIFFUI_TOKEN&format=png"
    # or
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.png?authToken=YOUR_DIFFUI_TOKEN"
    ```
    
    Replace `Page_Name` with the slug from each design image URL in this document.
    
    **Note:** Design image URLs are binary assets. URL-fetch-to-markdown tools may fail; download the file instead.
    
    
    **Do not use design crops as final page assets.** Never crop a hero image, photo, or illustration out of the design reference and place that crop in your HTML/CSS. The design image is a **specification only** — generate real high-resolution assets via `build/generate-image` (see **Generating image assets** below). Cropping the design is not a substitute for generation.
    
    The `&crop=x,y,width,height` query param is for **inspection and intermediate pipelines only** (e.g. measuring a region, or feeding a large illustration into image-to-SVG). It must **not** appear in any `<img src>`, CSS `background-image`, or other shipped asset path.
    
    ## Project setup
    
    Inspect the target repository before choosing a stack:
    
    | Situation | What to do |
    |-----------|------------|
    | **Existing project** | Use the framework, tooling, and patterns already present. Do not introduce a different stack. |
    | **Empty repo + linked npm package** (see Brand context) | Scaffold the minimum project that package requires, install it, then implement. Do not default to vanilla HTML/CSS when a brand package is linked. |
    | **Empty repo, no linked package** | Use vanilla HTML, CSS, and JavaScript. |
    
    When a linked npm package implies a specific framework (React, Vue, etc.) or tooling (Tailwind, shadcn CLI), scaffold that stack with sensible defaults — e.g. Next.js or Vite for React-based design systems — even if this document does not spell out every init command.
    
    ## Implementation guidelines
    
    You are an elite frontend engineer and design-to-code specialist. The design image is the primary source of truth; your code is the translation layer. Do not reinterpret or "improve" the design into something generic — reproduce it faithfully.
    
    Before writing code, analyze the image like a design specification:
    
    - **Layout & structure:** overall grid, section ordering, alignment, column logic, content width.
    - **Typography:** extract visible text verbatim; size/weight hierarchy, display vs body contrast, line height, tracking, serif vs sans.
    - **Spacing:** section padding, gutters, gaps, card padding, image-to-text distance. Preserve generous spacing; do not compress.
    - **Color:** background, panels, accents, button fills, text hierarchy, borders, shadows. Preserve the exact palette you observe; do not substitute generic web colors.
    - **Textures & surfaces:** Look for repeating photographic or organic surfaces used as tiled backgrounds — paper grain, linen, concrete, stone, wood grain, fabric weave, film noise, subtle marbling. Note tiling direction if visible: omnidirectional repeat → `both`; stripe or band patterns that repeat on one axis only → `horizontal` or `vertical`. Do **not** generate textures for flat solid fills, simple CSS gradients, hero photos, or illustrations — use CSS or `build/generate-image` instead. Only call `build/create-texture` when a seamless repeating surface is clearly part of the shipped design. Request extra PBR maps (`normal`, `roughness`, etc.) **only** when the user explicitly wants WebGL-style lighting or physically based shading — not for ordinary CSS `background-repeat` tiles.
    - **Components:** buttons (shape, radius, fill vs outline, padding, primary/secondary), cards, inputs, badges, dividers, icons.
    - **Imagery:** Match the container silhouette, not just the asset. Non-rectangular boundaries are first-class layout — implement with clip/mask, not border-radius. Generate high-res images via `build/generate-image`; generate seamless repeating surfaces via `build/create-texture` when the design calls for them; never ship crops from the design reference as final artwork.
    
    Implementation discipline:
    
    - Preserve layout logic, spacing rhythm, section ordering, text/image balance, typography mood, and component styling.
    - Use the actual visible text from the image, not placeholder copy.
    - Match colors and spacing to what you observe, not to defaults.
    - Do not add nested box-in-box wrappers, decorative pills, fake status labels, or micro-UI clutter not in the image.
    - Avoid AI-slop (default purple/blue gradients, glow, glassmorphism, generic card spam) unless the image clearly shows it.
    - Keep the first viewport clean and readable; responsive in spirit while keeping the desktop composition faithful.
    - Follow the **Project setup** rules above: match an existing repo's stack, scaffold for a linked npm package on an empty repo, or use vanilla HTML/CSS/JS when no package is linked.
    
    Resolve ambiguity in this order: preserve the visible design language, then layout/spacing logic, then component family, then mood/polish — only then fall back to a faithful choice. The final result should look like the same design in the image, translated into real code.
    
    ## Generating image assets
    
    When the design needs photos or illustrations (avatars, hero images, product shots, lineup photos, etc.), **generate them via Diffui** — do not use placeholders and **do not crop them out of the design reference**.
    
    
    **Required for all photographic and illustrative content in the page:**
    
    - Hero banners, scene illustrations, artist photos, product shots, and any other raster imagery → `build/generate-image`
    - Use **high** quality + `referenceImageUrl` when recreating a large hero or focal illustration from the design (see **Reference images**).
    - Use **medium** quality for lineup photos, avatars, and card imagery.
    - If generation fails, **retry** (including waiting longer for high-quality hero requests). Do not fall back to a cropped region of the design image as the shipped asset.
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-image`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "A portrait of a man for an avatar",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — plain-text description of the image (describe what you want; no negative prompts).
    - `width` and `height` — **required** on every request. Choose dimensions explicitly for each asset.
    
    **Optional fields:**
    
    - `quality` — `"medium"` (default) or `"high"`. See **Choosing quality** below.
    - `referenceImageUrl` — a Diffui image URL to use as a visual reference. **High quality (`"high"` / gpt-image-2) only.** See **Reference images** below.
    - `transparentBackground` — `true` to generate the asset with a **native alpha channel** (real transparency, not a removed background). **High quality (`"high"` / gpt-image-2) only.** See **Transparent backgrounds** below.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    Download the returned `url` to a local file (see **Local assets**), then reference that path in your HTML/CSS. Do not hotlink the remote URL. The auth token expires after seven days; if generation fails with 403, ask the user to re-copy the build link from Diffui.
    
    To inspect a generated asset with a vision tool, download PNG the same way as design images (`&format=png` or a `.png` path suffix).
    
    ### Choosing quality
    
    Pick `quality` per asset. **Default to medium** — it is faster, cheaper (1¢), and sufficient for most page assets.
    
    | Use **medium** (default, 1¢) | Use **high** (17¢) |
    |------------------------------|---------------------|
    | Profile pictures, avatars | Large hero / banner images |
    | Product shots, thumbnails | Anything needing ~2K resolution |
    | Icons, small decorative images | Illustrations, artistic focal imagery |
    | Most page assets | Main visual focus of the page |
    | | Any asset needing a transparent background |
    
    **Medium example** (avatar):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Professional headshot portrait of a woman, neutral background",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **High example** (hero illustration):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Wide cinematic illustration of a mountain landscape at sunset, painterly style",
      "width": 2048,
      "height": 1536,
      "quality": "high"
    }
    ```
    
    ### Transparent backgrounds (high quality only)
    
    Set `transparentBackground: true` when a **new** generated asset should composite over other page elements — the PNG comes back with a **native alpha channel** from gpt-image-2 in the same billed call. Do **not** generate an opaque image and then call `build/remove-background` for new assets; that costs an extra step and produces a worse matte.
    
    **Request transparency when the asset floats over other UI:**
    
    - Hero images or backdrop artwork layered over other elements
    - Overlay illustrations and decorative layers
    - Isolated products or objects (product on nothing, not product on white)
    - Icons, charts, and other assets placed on colored/typographic backgrounds
    
    **Keep it opaque (omit the flag) when:**
    
    - The asset is a full-bleed photo, scene, or filled background
    - The image fills its own rectangle and nothing shows through it
    
    Rules: requires `quality: "high"` (400 otherwise) and follows the high-quality (gpt-image-2) size rules. Reference the downloaded asset as PNG (or the served WebP, which also keeps alpha) — never re-encode it to JPEG or flatten it onto a background color.
    
    **Transparent example** (floating product cutout):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Studio shot of a single red running sneaker, floating at a three-quarter angle",
      "width": 1024,
      "height": 1024,
      "quality": "high",
      "transparentBackground": true
    }
    ```
    
    `build/remove-background` still exists for bitmaps you already have (user uploads, previously generated images) — see **Removing image backgrounds**.
    
    ### Reference images (high quality only)
    
    Use `referenceImageUrl` **only** when you need gpt-image-2 to recreate a **standalone background or illustration** that appears inside the design — not the full page screenshot.
    
    **Use a reference image when:**
    
    - The design shows a large hero illustration, scene, or photographic background that must become a real `<img>` or CSS background asset.
    - You need a **full-resolution, isolated** version of that artwork (no navigation, buttons, headlines, or other UI chrome).
    - A plain-text prompt alone would not preserve the composition, subjects, palette, or graphic details visible in the design.
    
    **Do not use a reference image when:**
    
    - Generating avatars, product shots, icons, thumbnails, or other assets that are **not** copied from a specific region of the design image.
    - The asset is simple enough to describe accurately with `prompt` alone.
    - You want to regenerate the **entire page** or any layout that includes UI elements — implement those in HTML/CSS from the design reference instead.
    
    Pass a Diffui URL from this document (design image or a previously generated asset). The `authToken` in `referenceImageUrl` must match `authToken` in the request body. `referenceImageUrl` is rejected unless `quality` is `"high"`.
    
    **High example** (isolated hero illustration from the design):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Recreate only the hero illustration from the reference: saxophonist in black suit and fedora against a New Orleans skyline, yellow sun disc, expressive JAZZ lettering, and purple brushstroke banner — no navigation, buttons, headlines, or page chrome. Match the reference composition, subjects, and color palette.",
      "width": 2048,
      "height": 1536,
      "quality": "high",
      "referenceImageUrl": "https://diffui.ai/image/Parallax_Landing_Page_copy.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    ### Generation timing
    
    - Each image request typically takes **around 60 seconds**; occasionally one can take **up to 3 minutes**.
    - Wait for each request to finish before using its returned `url`.
    - When you need **multiple assets**, send **separate requests in parallel** whenever you can (concurrent POSTs with different prompts and dimensions). Parallel generation is much faster than generating images one at a time.
    
    ### Medium quality (z-image) size rules
    
    Used when `quality` is `"medium"` or omitted. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 512 px |
    | Maximum edge | 2048 px |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** **512×512**
    - **Product shots / cards:** **512×768** or **768×512**
    - **Medium landscape panels:** **1024×768**
    
    Invalid dimensions return HTTP 400 with an error message.
    
    ### High quality (gpt-image-2) size rules
    
    Used when `quality` is `"high"`. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 16 px |
    | Maximum edge | 2048 px |
    | Multiple of | 16 |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    | Minimum total pixels | 655,360 |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** use **816×816** (smallest valid square).
    - **Landscape hero / banner:** **2048×1536**
    - **Portrait hero:** **1536×2048**
    - **Wide thumbnails:** e.g. **1280×512** (must still meet the pixel minimum)
    
    Invalid dimensions return HTTP 400 with an error message. There is no default size — always specify `width` and `height` intentionally for each asset.
    
    ## Seamless background textures
    
    When the design uses a **repeating photographic or organic surface** as a background (paper grain, linen, concrete, stone, fabric weave, subtle noise overlay), generate a seamless tile via Diffui — do not approximate with a cropped region from the design reference and do not use `build/generate-image` for textures.
    
    **Generate a texture when:**
    
    - The design shows a surface meant to tile with `background-repeat` (paper, linen, concrete, fabric, stone, film grain, etc.)
    - A plain CSS color or gradient cannot faithfully reproduce the visible surface
    
    **Do not generate a texture when:**
    
    - The background is a flat solid color or a simple linear/radial gradient → use CSS
    - The surface is glass, blur, or frosted effects → use CSS `backdrop-filter` or similar
    - The asset is a hero photo, illustration, or product shot → use `build/generate-image`
    - The pattern is a standard UI motif achievable with CSS alone
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-texture`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "warm off-white paper grain, subtle fiber texture",
      "tilingMode": "both"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — describe the surface or material only (what you want the tile to look like).
    
    **Optional fields:**
    
    - `tilingMode` — `"both"` (default), `"horizontal"`, or `"vertical"`. Use `"both"` for omnidirectional repeats. Use `"horizontal"` or `"vertical"` only when the design clearly repeats on one axis (e.g. horizontal wood slats or vertical fabric stripes).
    - `maps` — optional array of PBR map types to generate alongside the seamless tile. Allowed values: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit it or pass an empty array to use the Fal model default. **Only request specific maps when the user explicitly wants WebGL-style lighting or physically based shading** — not for standard CSS repeating backgrounds.
    
    Example with a normal map for a lit 3D surface:
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "weathered brushed steel, fine directional scratches",
      "tilingMode": "both",
      "maps": ["normal", "roughness"]
    }
    ```
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_texture.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 1024,
      "height": 1024,
      "tilingMode": "both",
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_texture_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_texture_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    When `maps` is omitted, Diffui omits the field from the Fal request so the model uses its default maps. If Fal returns map images, Diffui includes them in the `maps` response array.
    
    Output is always **1024×1024**. Download the returned `url` locally (see **Local assets**), then reference that path in CSS:
    
    | `tilingMode` | CSS `background-repeat` |
    |---------------------|--------------------------------|
    | `both` | `repeat` |
    | `horizontal` | `repeat-x` |
    | `vertical` | `repeat-y` |
    
    - Cost: **3¢** per call for the seamless tile alone; **+1¢** per additional PBR map at 1024×1024 (e.g. tile + normal = 4¢).
    - Typical workflow: identify the surface during design analysis → generate once → apply as a repeating CSS background. Request extra maps only for WebGL / Three.js materials with real-time lighting.
    
    ## Removing image backgrounds
    
    When an **already-sourced** bitmap needs a transparent cutout (a user-provided product photo, an existing profile picture, a previously generated image), remove its background via Diffui. The endpoint accepts either a remote image URL (JSON) or a **local file uploaded directly** (multipart) — use the upload form for user-provided images that only exist on disk.
    
    For **new** assets that need transparency, do not use this endpoint — generate them with native alpha instead (`transparentBackground: true` on `build/generate-image` at high quality; see **Transparent backgrounds**). That is one billed call with a real alpha channel rather than a generate-then-cut-out pipeline.
    
    **Endpoint:** `POST https://diffui.ai/api/build/remove-background`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    - `imageUrl` — a publicly fetchable image URL. Use a Diffui asset URL from `build/generate-image` (include the `authToken` query param).
    
    ### Option B — local file upload (multipart)
    
    Send the file bytes directly as `multipart/form-data` — no hosting required:
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/remove-background" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/product-photo.png"
    ```
    
    - `file` — the image file (PNG, JPEG, or WebP; max 25MB).
    - Pass exactly one of `imageUrl` or `file`, not both.
    
    **Required in both forms:**
    
    - `authToken` — the same token from this build link.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_cutout.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    - Cost: **1¢** per call.
    - Typical workflow: cut out a user-provided or previously generated bitmap. For new assets, request native transparency at generation time instead (see **Transparent backgrounds**).
    - Download the returned `url` locally before using it in code (see **Local assets**).
    - The returned image is a transparent PNG served as WebP for display; use `&format=png` when you need the alpha channel for inspection.
    
    ## Generating PBR maps from an image
    
    When an existing image needs WebGL-style lighting — normal, height (displacement), roughness, basecolor (albedo), or metalness maps — generate the maps via Diffui. Use this for hero artwork, product cutouts, or any raster that will be lit in a shader. **Only call it when the user explicitly wants physically based lighting or displacement**, not for ordinary flat imagery.
    
    Like remove-background, the input is either a remote URL (JSON) or a **local file uploaded directly** (multipart).
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-maps`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "maps": ["normal", "height", "roughness"]
    }
    ```
    
    ### Option B — local file upload (multipart)
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/create-maps" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/card.png" \
      -F "maps=normal,height,roughness"
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `imageUrl` (publicly fetchable URL) or `file` (PNG, JPEG, or WebP; max 25MB).
    
    **Optional fields:**
    
    - `maps` — which maps to predict: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit to generate **all five**. Request only the maps your shader actually samples — cost scales per map.
    
    **Response (JSON):**
    
    ```json
    {
      "width": 1024,
      "height": 1536,
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_example_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "height",
          "url": "https://diffui.ai/image/generated_example_height.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_example_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    Maps match the input image dimensions and share its UV space — sample them with the same coordinates as the source texture.
    
    - Cost: **1¢** base + **1¢ per megapixel per map** (e.g. a 1024×1024 input with all 5 maps = 6¢).
    - Download each returned map `url` locally before referencing it (see **Local assets**); use `&format=png` when the shader pipeline needs lossless data.
    - Unlike `build/create-texture` (which *generates a new seamless tile* from a text prompt), `build/create-maps` derives maps for an image you already have.
    
    ## Generating SVG assets
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-svg`
    
    **Headers:** `Content-Type: application/json`
    
    Pick the mode by asset type — **do not use image-to-SVG for small UI icons**; vectorizing cropped icon pixels produces poor results. Use **text-to-SVG** for icons instead.
    
    ### Custom icons → text-to-SVG only
    
    Use Quiver **text-to-SVG** for **non-standard icons** not available in your project's icon library — for example a ferris wheel for a county fair or a unique pictogram from the design.
    
    **Do not generate SVGs for standard UI icons** (arrows, chevrons, menu, close, search, social logos, etc.). Use the icon pack your project already uses (Lucide, Heroicons, Phosphor, Material Symbols, etc.).
    
    **Do not use image-to-SVG for icons** — even with a tight crop from the design, results are usually unusable. Describe the icon in a `prompt` instead.
    
    **Before generating:** search the icon pack for a close match. Only call `build/generate-svg` when no suitable icon exists.
    
    Describe the icon in `prompt`. Optional `instructions` sets style (flat monochrome, line weight, etc.). **Always set `viewBox`** so the artwork fits the canvas and is not clipped. Use a square viewBox for icons (e.g. 64×64).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Minimal ferris wheel icon for a county fair app, single-color line art",
      "instructions": "Flat monochrome icon. Draw entirely inside the viewBox with comfortable padding; do not extend past the canvas edges.",
      "viewBox": { "minX": 0, "minY": 0, "width": 64, "height": 64 }
    }
    ```
    
    ### Complex illustrations → image-to-SVG only
    
    Use **image-to-SVG** only for **large or complex artwork** that should become a vector illustration — for example a detailed logo mark, badge, or decorative graphic region from the design. **Not for footer icons, toolbar glyphs, or other small UI pictograms.**
    
    1. Download the design as PNG (`&format=png`) and inspect it.
    2. Measure the illustration's bounding box in pixels (not a tiny icon crop).
    3. Fetch a crop around that region: `&format=png&crop=x,y,width,height` — no labels or neighboring UI unless they are part of the artwork.
    4. Pass that URL as `imageUrl`. Use a viewBox that matches the illustration's aspect ratio and scale (e.g. 512×512 for a square logo).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/Hero.webp?authToken=YOUR_DIFFUI_TOKEN&format=png&crop=400,80,640,480",
      "viewBox": { "minX": 0, "minY": 0, "width": 512, "height": 384 }
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `prompt` (text-to-SVG, **icons only**) or `imageUrl` (image-to-SVG, **illustrations only**).
    - `viewBox` — SVG canvas forwarded to Quiver as `attributes.viewBox`. Set `minX` and `minY` to `0` unless you have a reason not to. Artwork must fit entirely inside this box with padding.
    
    **Optional field:**
    
    - `instructions` — text-to-SVG only; style guidance for Quiver. Mention that the icon must stay inside the viewBox.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.svg?authToken=YOUR_DIFFUI_TOKEN",
      "width": 24,
      "height": 24
    }
    ```
    
    - Cost: **2¢** per SVG.
    - Download the returned `url` locally before using it inline or as `<img src>` (see **Local assets**).
    
    
  2. 02Creative direction
    Illustration for Give the scene more presence

    Give the scene more presence

    Conversation prompt
    We're going to move the elements more based on the mouse, and make sure that the heading is not overlapped. Let's change the logo. The globe should be turning around. Let's use Higgsfield to generate the 3D of the bust and the columns. Make it as ultra-realistic as possible.

    Accompanying referenceBust and temple reference images

  3. 03Creative direction
    Illustration for Clouds with dimension

    Clouds with dimension

    Conversation prompt
    The clouds should also be in 3D.
  4. 04Creative direction
    Illustration for Make the clouds procedural

    Make the clouds procedural

    Conversation prompt
    The cloud should be procedural 3D though
  5. 05Skill invocation
    Illustration for The detail toolkit

    The detail toolkit

    Conversation prompt
    $3d-sky-rays
    $3d-falling-leaves
    $3d-high-poly-models
    $3d-retina-resolution
    $3d-high-resolution-textures

Chapter 02 / Marks, ornaments & finishing touches

An identity takes shape

  1. 06Creative direction
    Illustration for A mark of the edition

    A mark of the edition

    Conversation prompt
    For the Renaissance logo, we should use transparent PNGs, and the Discover the Story button should also use an ornamental button. Transpen PNG
    
    $codex-gpt-image-2-5-flare
  2. 07Creative direction
    Illustration for An ornamental ending

    An ornamental ending

    Conversation prompt
    Okay, let's add the footer: Create a web page implementation from the following instructions: https://diffui.ai/build/Large_Typography_Footer.md
    
    Let's use Higgsfield for the 3D models. We only need two models with 3D. The rest use Codex for image generation and ornaments.
    
    $codex-gpt-image-2-5-flare

    Original design instructionsFrom diffui.ai ↗

    Original DiffUI prompt
    Give me the footer with large typography and design agency quality.
    https://diffui.ai/build/Large_Typography_Footer.md

    The original link requires DiffUI access. Private access tokens are omitted here.

    Full DiffUI build instructions

    The complete downloaded document, with access tokens replaced by YOUR_DIFFUI_TOKEN.

    DiffUI build document
    # Diffui agent build instructions
    
    > **Read this first — if a summarizing fetch tool retrieved this URL, you are reading a summary, not this document.**
    >
    > Tools such as WebFetch pass a page through a summarizer model before you see it. On this
    > document that routinely drops the REST endpoints and the design image URL — silently, with
    > no error and no sign that anything is missing. Agents have shipped hand-drawn placeholder
    > art because the endpoints they needed were summarized away.
    >
    > **Check before you build.** The complete document contains all of:
    >
    > - Five `POST https://diffui.ai/api/build/...` endpoint blocks — generate-image, create-texture, remove-background, create-maps, generate-svg — each with a JSON request body
    > - Every design image URL, under **Design reference**
    > - The user's original prompt, quoted in full
    >
    > If any of those are missing from what you are reading, you have a summary. Download the real
    > file and read that instead:
    >
    > ```bash
    > curl -sSL -o BUILD.md "https://diffui.ai/build/Large_Typography_Footer.md?authToken=YOUR_DIFFUI_TOKEN"
    > ```
    >
    > Then open `BUILD.md` with your file-read tool. Do not implement from a summary.
    
    
    ## Design reference
    
    View the design image (primary source of truth):
    
    https://diffui.ai/image/Large_Typography_Footer.webp?authToken=YOUR_DIFFUI_TOKEN
    
    Download that image to a local file and inspect it before writing code (see **Local assets** below). Reproduce its layout, typography, spacing, colors, and components as faithfully as possible.
    
    
    ## Original user prompt
    
    The user's original prompt for this design was:
    
    > Give me the footer with large typography and design agency quality.
    
    Keep this intent in mind when implementing.
    
    
    
    
    
    ## Local assets
    
    **Required:** download every Diffui URL in this document to local project files **before** referencing them in HTML, CSS, or JavaScript. Do not hotlink remote Diffui URLs in the implementation — auth tokens expire and runtime fetches are unreliable.
    
    This applies to:
    
    - Design reference images (inspect locally before writing UI code)
    - Images returned from asset generation (`build/generate-image`, `build/generate-svg`, `build/remove-background`, `build/create-texture`, and `build/create-maps`)
    - Any other Diffui image URL in this document
    
    Save downloads under a project folder such as `assets/` and reference those local paths in code.
    
    ### Downloading design images
    
    Design renders are visual specifications. **Download each image and inspect it before writing code.** Do not rely on text summaries alone.
    
    
    Image URLs serve **WebP by default** (good for `<img>` tags in browsers). Many agent **URL-to-markdown fetch tools cannot decode WebP** and may fail even though the URL works with `curl`.
    
    For vision analysis, download PNG — append `&format=png` to the design URL, or use a `.png` filename in the path. Open the downloaded file with your image/read tool and analyze layout, copy, colors, and spacing.
    
    Example (design spec for analysis — not a final asset):
    
    ```bash
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.webp?authToken=YOUR_DIFFUI_TOKEN&format=png"
    # or
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.png?authToken=YOUR_DIFFUI_TOKEN"
    ```
    
    Replace `Page_Name` with the slug from each design image URL in this document.
    
    **Note:** Design image URLs are binary assets. URL-fetch-to-markdown tools may fail; download the file instead.
    
    
    **Do not use design crops as final page assets.** Never crop a hero image, photo, or illustration out of the design reference and place that crop in your HTML/CSS. The design image is a **specification only** — generate real high-resolution assets via `build/generate-image` (see **Generating image assets** below). Cropping the design is not a substitute for generation.
    
    The `&crop=x,y,width,height` query param is for **inspection and intermediate pipelines only** (e.g. measuring a region, or feeding a large illustration into image-to-SVG). It must **not** appear in any `<img src>`, CSS `background-image`, or other shipped asset path.
    
    ## Project setup
    
    Inspect the target repository before choosing a stack:
    
    | Situation | What to do |
    |-----------|------------|
    | **Existing project** | Use the framework, tooling, and patterns already present. Do not introduce a different stack. |
    | **Empty repo + linked npm package** (see Brand context) | Scaffold the minimum project that package requires, install it, then implement. Do not default to vanilla HTML/CSS when a brand package is linked. |
    | **Empty repo, no linked package** | Use vanilla HTML, CSS, and JavaScript. |
    
    When a linked npm package implies a specific framework (React, Vue, etc.) or tooling (Tailwind, shadcn CLI), scaffold that stack with sensible defaults — e.g. Next.js or Vite for React-based design systems — even if this document does not spell out every init command.
    
    ## Implementation guidelines
    
    You are an elite frontend engineer and design-to-code specialist. The design image is the primary source of truth; your code is the translation layer. Do not reinterpret or "improve" the design into something generic — reproduce it faithfully.
    
    Before writing code, analyze the image like a design specification:
    
    - **Layout & structure:** overall grid, section ordering, alignment, column logic, content width.
    - **Typography:** extract visible text verbatim; size/weight hierarchy, display vs body contrast, line height, tracking, serif vs sans.
    - **Spacing:** section padding, gutters, gaps, card padding, image-to-text distance. Preserve generous spacing; do not compress.
    - **Color:** background, panels, accents, button fills, text hierarchy, borders, shadows. Preserve the exact palette you observe; do not substitute generic web colors.
    - **Textures & surfaces:** Look for repeating photographic or organic surfaces used as tiled backgrounds — paper grain, linen, concrete, stone, wood grain, fabric weave, film noise, subtle marbling. Note tiling direction if visible: omnidirectional repeat → `both`; stripe or band patterns that repeat on one axis only → `horizontal` or `vertical`. Do **not** generate textures for flat solid fills, simple CSS gradients, hero photos, or illustrations — use CSS or `build/generate-image` instead. Only call `build/create-texture` when a seamless repeating surface is clearly part of the shipped design. Request extra PBR maps (`normal`, `roughness`, etc.) **only** when the user explicitly wants WebGL-style lighting or physically based shading — not for ordinary CSS `background-repeat` tiles.
    - **Components:** buttons (shape, radius, fill vs outline, padding, primary/secondary), cards, inputs, badges, dividers, icons.
    - **Imagery:** Match the container silhouette, not just the asset. Non-rectangular boundaries are first-class layout — implement with clip/mask, not border-radius. Generate high-res images via `build/generate-image`; generate seamless repeating surfaces via `build/create-texture` when the design calls for them; never ship crops from the design reference as final artwork.
    
    Implementation discipline:
    
    - Preserve layout logic, spacing rhythm, section ordering, text/image balance, typography mood, and component styling.
    - Use the actual visible text from the image, not placeholder copy.
    - Match colors and spacing to what you observe, not to defaults.
    - Do not add nested box-in-box wrappers, decorative pills, fake status labels, or micro-UI clutter not in the image.
    - Avoid AI-slop (default purple/blue gradients, glow, glassmorphism, generic card spam) unless the image clearly shows it.
    - Keep the first viewport clean and readable; responsive in spirit while keeping the desktop composition faithful.
    - Follow the **Project setup** rules above: match an existing repo's stack, scaffold for a linked npm package on an empty repo, or use vanilla HTML/CSS/JS when no package is linked.
    
    Resolve ambiguity in this order: preserve the visible design language, then layout/spacing logic, then component family, then mood/polish — only then fall back to a faithful choice. The final result should look like the same design in the image, translated into real code.
    
    ## Generating image assets
    
    When the design needs photos or illustrations (avatars, hero images, product shots, lineup photos, etc.), **generate them via Diffui** — do not use placeholders and **do not crop them out of the design reference**.
    
    
    **Required for all photographic and illustrative content in the page:**
    
    - Hero banners, scene illustrations, artist photos, product shots, and any other raster imagery → `build/generate-image`
    - Use **high** quality + `referenceImageUrl` when recreating a large hero or focal illustration from the design (see **Reference images**).
    - Use **medium** quality for lineup photos, avatars, and card imagery.
    - If generation fails, **retry** (including waiting longer for high-quality hero requests). Do not fall back to a cropped region of the design image as the shipped asset.
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-image`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "A portrait of a man for an avatar",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — plain-text description of the image (describe what you want; no negative prompts).
    - `width` and `height` — **required** on every request. Choose dimensions explicitly for each asset.
    
    **Optional fields:**
    
    - `quality` — `"medium"` (default) or `"high"`. See **Choosing quality** below.
    - `referenceImageUrl` — a Diffui image URL to use as a visual reference. **High quality (`"high"` / gpt-image-2) only.** See **Reference images** below.
    - `transparentBackground` — `true` to generate the asset with a **native alpha channel** (real transparency, not a removed background). **High quality (`"high"` / gpt-image-2) only.** See **Transparent backgrounds** below.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    Download the returned `url` to a local file (see **Local assets**), then reference that path in your HTML/CSS. Do not hotlink the remote URL. The auth token expires after seven days; if generation fails with 403, ask the user to re-copy the build link from Diffui.
    
    To inspect a generated asset with a vision tool, download PNG the same way as design images (`&format=png` or a `.png` path suffix).
    
    ### Choosing quality
    
    Pick `quality` per asset. **Default to medium** — it is faster, cheaper (1¢), and sufficient for most page assets.
    
    | Use **medium** (default, 1¢) | Use **high** (17¢) |
    |------------------------------|---------------------|
    | Profile pictures, avatars | Large hero / banner images |
    | Product shots, thumbnails | Anything needing ~2K resolution |
    | Icons, small decorative images | Illustrations, artistic focal imagery |
    | Most page assets | Main visual focus of the page |
    | | Any asset needing a transparent background |
    
    **Medium example** (avatar):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Professional headshot portrait of a woman, neutral background",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **High example** (hero illustration):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Wide cinematic illustration of a mountain landscape at sunset, painterly style",
      "width": 2048,
      "height": 1536,
      "quality": "high"
    }
    ```
    
    ### Transparent backgrounds (high quality only)
    
    Set `transparentBackground: true` when a **new** generated asset should composite over other page elements — the PNG comes back with a **native alpha channel** from gpt-image-2 in the same billed call. Do **not** generate an opaque image and then call `build/remove-background` for new assets; that costs an extra step and produces a worse matte.
    
    **Request transparency when the asset floats over other UI:**
    
    - Hero images or backdrop artwork layered over other elements
    - Overlay illustrations and decorative layers
    - Isolated products or objects (product on nothing, not product on white)
    - Icons, charts, and other assets placed on colored/typographic backgrounds
    
    **Keep it opaque (omit the flag) when:**
    
    - The asset is a full-bleed photo, scene, or filled background
    - The image fills its own rectangle and nothing shows through it
    
    Rules: requires `quality: "high"` (400 otherwise) and follows the high-quality (gpt-image-2) size rules. Reference the downloaded asset as PNG (or the served WebP, which also keeps alpha) — never re-encode it to JPEG or flatten it onto a background color.
    
    **Transparent example** (floating product cutout):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Studio shot of a single red running sneaker, floating at a three-quarter angle",
      "width": 1024,
      "height": 1024,
      "quality": "high",
      "transparentBackground": true
    }
    ```
    
    `build/remove-background` still exists for bitmaps you already have (user uploads, previously generated images) — see **Removing image backgrounds**.
    
    ### Reference images (high quality only)
    
    Use `referenceImageUrl` **only** when you need gpt-image-2 to recreate a **standalone background or illustration** that appears inside the design — not the full page screenshot.
    
    **Use a reference image when:**
    
    - The design shows a large hero illustration, scene, or photographic background that must become a real `<img>` or CSS background asset.
    - You need a **full-resolution, isolated** version of that artwork (no navigation, buttons, headlines, or other UI chrome).
    - A plain-text prompt alone would not preserve the composition, subjects, palette, or graphic details visible in the design.
    
    **Do not use a reference image when:**
    
    - Generating avatars, product shots, icons, thumbnails, or other assets that are **not** copied from a specific region of the design image.
    - The asset is simple enough to describe accurately with `prompt` alone.
    - You want to regenerate the **entire page** or any layout that includes UI elements — implement those in HTML/CSS from the design reference instead.
    
    Pass a Diffui URL from this document (design image or a previously generated asset). The `authToken` in `referenceImageUrl` must match `authToken` in the request body. `referenceImageUrl` is rejected unless `quality` is `"high"`.
    
    **High example** (isolated hero illustration from the design):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Recreate only the hero illustration from the reference: saxophonist in black suit and fedora against a New Orleans skyline, yellow sun disc, expressive JAZZ lettering, and purple brushstroke banner — no navigation, buttons, headlines, or page chrome. Match the reference composition, subjects, and color palette.",
      "width": 2048,
      "height": 1536,
      "quality": "high",
      "referenceImageUrl": "https://diffui.ai/image/Large_Typography_Footer.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    ### Generation timing
    
    - Each image request typically takes **around 60 seconds**; occasionally one can take **up to 3 minutes**.
    - Wait for each request to finish before using its returned `url`.
    - When you need **multiple assets**, send **separate requests in parallel** whenever you can (concurrent POSTs with different prompts and dimensions). Parallel generation is much faster than generating images one at a time.
    
    ### Medium quality (z-image) size rules
    
    Used when `quality` is `"medium"` or omitted. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 512 px |
    | Maximum edge | 2048 px |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** **512×512**
    - **Product shots / cards:** **512×768** or **768×512**
    - **Medium landscape panels:** **1024×768**
    
    Invalid dimensions return HTTP 400 with an error message.
    
    ### High quality (gpt-image-2) size rules
    
    Used when `quality` is `"high"`. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 16 px |
    | Maximum edge | 2048 px |
    | Multiple of | 16 |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    | Minimum total pixels | 655,360 |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** use **816×816** (smallest valid square).
    - **Landscape hero / banner:** **2048×1536**
    - **Portrait hero:** **1536×2048**
    - **Wide thumbnails:** e.g. **1280×512** (must still meet the pixel minimum)
    
    Invalid dimensions return HTTP 400 with an error message. There is no default size — always specify `width` and `height` intentionally for each asset.
    
    ## Seamless background textures
    
    When the design uses a **repeating photographic or organic surface** as a background (paper grain, linen, concrete, stone, fabric weave, subtle noise overlay), generate a seamless tile via Diffui — do not approximate with a cropped region from the design reference and do not use `build/generate-image` for textures.
    
    **Generate a texture when:**
    
    - The design shows a surface meant to tile with `background-repeat` (paper, linen, concrete, fabric, stone, film grain, etc.)
    - A plain CSS color or gradient cannot faithfully reproduce the visible surface
    
    **Do not generate a texture when:**
    
    - The background is a flat solid color or a simple linear/radial gradient → use CSS
    - The surface is glass, blur, or frosted effects → use CSS `backdrop-filter` or similar
    - The asset is a hero photo, illustration, or product shot → use `build/generate-image`
    - The pattern is a standard UI motif achievable with CSS alone
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-texture`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "warm off-white paper grain, subtle fiber texture",
      "tilingMode": "both"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — describe the surface or material only (what you want the tile to look like).
    
    **Optional fields:**
    
    - `tilingMode` — `"both"` (default), `"horizontal"`, or `"vertical"`. Use `"both"` for omnidirectional repeats. Use `"horizontal"` or `"vertical"` only when the design clearly repeats on one axis (e.g. horizontal wood slats or vertical fabric stripes).
    - `maps` — optional array of PBR map types to generate alongside the seamless tile. Allowed values: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit it or pass an empty array to use the Fal model default. **Only request specific maps when the user explicitly wants WebGL-style lighting or physically based shading** — not for standard CSS repeating backgrounds.
    
    Example with a normal map for a lit 3D surface:
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "weathered brushed steel, fine directional scratches",
      "tilingMode": "both",
      "maps": ["normal", "roughness"]
    }
    ```
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_texture.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 1024,
      "height": 1024,
      "tilingMode": "both",
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_texture_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_texture_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    When `maps` is omitted, Diffui omits the field from the Fal request so the model uses its default maps. If Fal returns map images, Diffui includes them in the `maps` response array.
    
    Output is always **1024×1024**. Download the returned `url` locally (see **Local assets**), then reference that path in CSS:
    
    | `tilingMode` | CSS `background-repeat` |
    |---------------------|--------------------------------|
    | `both` | `repeat` |
    | `horizontal` | `repeat-x` |
    | `vertical` | `repeat-y` |
    
    - Cost: **3¢** per call for the seamless tile alone; **+1¢** per additional PBR map at 1024×1024 (e.g. tile + normal = 4¢).
    - Typical workflow: identify the surface during design analysis → generate once → apply as a repeating CSS background. Request extra maps only for WebGL / Three.js materials with real-time lighting.
    
    ## Removing image backgrounds
    
    When an **already-sourced** bitmap needs a transparent cutout (a user-provided product photo, an existing profile picture, a previously generated image), remove its background via Diffui. The endpoint accepts either a remote image URL (JSON) or a **local file uploaded directly** (multipart) — use the upload form for user-provided images that only exist on disk.
    
    For **new** assets that need transparency, do not use this endpoint — generate them with native alpha instead (`transparentBackground: true` on `build/generate-image` at high quality; see **Transparent backgrounds**). That is one billed call with a real alpha channel rather than a generate-then-cut-out pipeline.
    
    **Endpoint:** `POST https://diffui.ai/api/build/remove-background`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    - `imageUrl` — a publicly fetchable image URL. Use a Diffui asset URL from `build/generate-image` (include the `authToken` query param).
    
    ### Option B — local file upload (multipart)
    
    Send the file bytes directly as `multipart/form-data` — no hosting required:
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/remove-background" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/product-photo.png"
    ```
    
    - `file` — the image file (PNG, JPEG, or WebP; max 25MB).
    - Pass exactly one of `imageUrl` or `file`, not both.
    
    **Required in both forms:**
    
    - `authToken` — the same token from this build link.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_cutout.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    - Cost: **1¢** per call.
    - Typical workflow: cut out a user-provided or previously generated bitmap. For new assets, request native transparency at generation time instead (see **Transparent backgrounds**).
    - Download the returned `url` locally before using it in code (see **Local assets**).
    - The returned image is a transparent PNG served as WebP for display; use `&format=png` when you need the alpha channel for inspection.
    
    ## Generating PBR maps from an image
    
    When an existing image needs WebGL-style lighting — normal, height (displacement), roughness, basecolor (albedo), or metalness maps — generate the maps via Diffui. Use this for hero artwork, product cutouts, or any raster that will be lit in a shader. **Only call it when the user explicitly wants physically based lighting or displacement**, not for ordinary flat imagery.
    
    Like remove-background, the input is either a remote URL (JSON) or a **local file uploaded directly** (multipart).
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-maps`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "maps": ["normal", "height", "roughness"]
    }
    ```
    
    ### Option B — local file upload (multipart)
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/create-maps" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/card.png" \
      -F "maps=normal,height,roughness"
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `imageUrl` (publicly fetchable URL) or `file` (PNG, JPEG, or WebP; max 25MB).
    
    **Optional fields:**
    
    - `maps` — which maps to predict: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit to generate **all five**. Request only the maps your shader actually samples — cost scales per map.
    
    **Response (JSON):**
    
    ```json
    {
      "width": 1024,
      "height": 1536,
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_example_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "height",
          "url": "https://diffui.ai/image/generated_example_height.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_example_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    Maps match the input image dimensions and share its UV space — sample them with the same coordinates as the source texture.
    
    - Cost: **1¢** base + **1¢ per megapixel per map** (e.g. a 1024×1024 input with all 5 maps = 6¢).
    - Download each returned map `url` locally before referencing it (see **Local assets**); use `&format=png` when the shader pipeline needs lossless data.
    - Unlike `build/create-texture` (which *generates a new seamless tile* from a text prompt), `build/create-maps` derives maps for an image you already have.
    
    ## Generating SVG assets
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-svg`
    
    **Headers:** `Content-Type: application/json`
    
    Pick the mode by asset type — **do not use image-to-SVG for small UI icons**; vectorizing cropped icon pixels produces poor results. Use **text-to-SVG** for icons instead.
    
    ### Custom icons → text-to-SVG only
    
    Use Quiver **text-to-SVG** for **non-standard icons** not available in your project's icon library — for example a ferris wheel for a county fair or a unique pictogram from the design.
    
    **Do not generate SVGs for standard UI icons** (arrows, chevrons, menu, close, search, social logos, etc.). Use the icon pack your project already uses (Lucide, Heroicons, Phosphor, Material Symbols, etc.).
    
    **Do not use image-to-SVG for icons** — even with a tight crop from the design, results are usually unusable. Describe the icon in a `prompt` instead.
    
    **Before generating:** search the icon pack for a close match. Only call `build/generate-svg` when no suitable icon exists.
    
    Describe the icon in `prompt`. Optional `instructions` sets style (flat monochrome, line weight, etc.). **Always set `viewBox`** so the artwork fits the canvas and is not clipped. Use a square viewBox for icons (e.g. 64×64).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Minimal ferris wheel icon for a county fair app, single-color line art",
      "instructions": "Flat monochrome icon. Draw entirely inside the viewBox with comfortable padding; do not extend past the canvas edges.",
      "viewBox": { "minX": 0, "minY": 0, "width": 64, "height": 64 }
    }
    ```
    
    ### Complex illustrations → image-to-SVG only
    
    Use **image-to-SVG** only for **large or complex artwork** that should become a vector illustration — for example a detailed logo mark, badge, or decorative graphic region from the design. **Not for footer icons, toolbar glyphs, or other small UI pictograms.**
    
    1. Download the design as PNG (`&format=png`) and inspect it.
    2. Measure the illustration's bounding box in pixels (not a tiny icon crop).
    3. Fetch a crop around that region: `&format=png&crop=x,y,width,height` — no labels or neighboring UI unless they are part of the artwork.
    4. Pass that URL as `imageUrl`. Use a viewBox that matches the illustration's aspect ratio and scale (e.g. 512×512 for a square logo).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/Hero.webp?authToken=YOUR_DIFFUI_TOKEN&format=png&crop=400,80,640,480",
      "viewBox": { "minX": 0, "minY": 0, "width": 512, "height": 384 }
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `prompt` (text-to-SVG, **icons only**) or `imageUrl` (image-to-SVG, **illustrations only**).
    - `viewBox` — SVG canvas forwarded to Quiver as `attributes.viewBox`. Set `minX` and `minY` to `0` unless you have a reason not to. Artwork must fit entirely inside this box with padding.
    
    **Optional field:**
    
    - `instructions` — text-to-SVG only; style guidance for Quiver. Mention that the icon must stay inside the viewBox.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.svg?authToken=YOUR_DIFFUI_TOKEN",
      "width": 24,
      "height": 24
    }
    ```
    
    - Cost: **2¢** per SVG.
    - Download the returned `url` locally before using it inline or as `<img src>` (see **Local assets**).
    
    
  3. 08Creative direction
    Illustration for Let the composition breathe

    Let the composition breathe

    Conversation prompt
    We don't need a background for this container.

    Accompanying referenceThe “01 / Art / Commerce / A brighter tomorrow” strip

  4. 09Creative direction
    Illustration for Bring the footer together

    Bring the footer together

    Conversation prompt
    The footer: we're going to change this so that the footer has the content of the bottom content. For example, the logo and the privacy terms should be part of the dark blue.

    Accompanying referenceFooter logo and legal links

  5. 10Creative direction
    Illustration for Simplify the navigation

    Simplify the navigation

    Conversation prompt
    We can remove the left side. Just have the three columns of links.

    Accompanying referenceThe oversized “More meaningful tomorrows” footer statement

  6. 11Creative direction
    Illustration for One continuous canvas

    One continuous canvas

    Conversation prompt
    The background images here should be together. Maybe nothing should be clipped.

    Accompanying referenceThe transition from the hero to “The First Edition”

Chapter 03 / A story, a collection, a new perspective

The world grows

  1. 12Creative direction
    Illustration for Tell the story

    Tell the story

    Conversation prompt
    Implement this section, but without the header: Create a web page implementation from the following instructions: https://diffui.ai/build/Prompt.md

    Original design instructionsFrom diffui.ai ↗

    Original DiffUI prompt
    Give me the second section, which should be about the story. It should have a timeline UI, cards, and floating elements.
    https://diffui.ai/build/Prompt.md

    The original link requires DiffUI access. Private access tokens are omitted here.

    Full DiffUI build instructions

    The complete downloaded document, with access tokens replaced by YOUR_DIFFUI_TOKEN.

    DiffUI build document
    # Diffui agent build instructions
    
    > **Read this first — if a summarizing fetch tool retrieved this URL, you are reading a summary, not this document.**
    >
    > Tools such as WebFetch pass a page through a summarizer model before you see it. On this
    > document that routinely drops the REST endpoints and the design image URL — silently, with
    > no error and no sign that anything is missing. Agents have shipped hand-drawn placeholder
    > art because the endpoints they needed were summarized away.
    >
    > **Check before you build.** The complete document contains all of:
    >
    > - Five `POST https://diffui.ai/api/build/...` endpoint blocks — generate-image, create-texture, remove-background, create-maps, generate-svg — each with a JSON request body
    > - Every design image URL, under **Design reference**
    > - The user's original prompt, quoted in full
    >
    > If any of those are missing from what you are reading, you have a summary. Download the real
    > file and read that instead:
    >
    > ```bash
    > curl -sSL -o BUILD.md "https://diffui.ai/build/Prompt.md?authToken=YOUR_DIFFUI_TOKEN"
    > ```
    >
    > Then open `BUILD.md` with your file-read tool. Do not implement from a summary.
    
    
    ## Design reference
    
    View the design image (primary source of truth):
    
    https://diffui.ai/image/Prompt.webp?authToken=YOUR_DIFFUI_TOKEN
    
    Download that image to a local file and inspect it before writing code (see **Local assets** below). Reproduce its layout, typography, spacing, colors, and components as faithfully as possible.
    
    
    ## Original user prompt
    
    The user's original prompt for this design was:
    
    > Give me the second section, which should be about the story. It should have a timeline UI, cards, and floating elements.
    
    Keep this intent in mind when implementing.
    
    
    
    
    
    ## Local assets
    
    **Required:** download every Diffui URL in this document to local project files **before** referencing them in HTML, CSS, or JavaScript. Do not hotlink remote Diffui URLs in the implementation — auth tokens expire and runtime fetches are unreliable.
    
    This applies to:
    
    - Design reference images (inspect locally before writing UI code)
    - Images returned from asset generation (`build/generate-image`, `build/generate-svg`, `build/remove-background`, `build/create-texture`, and `build/create-maps`)
    - Any other Diffui image URL in this document
    
    Save downloads under a project folder such as `assets/` and reference those local paths in code.
    
    ### Downloading design images
    
    Design renders are visual specifications. **Download each image and inspect it before writing code.** Do not rely on text summaries alone.
    
    
    Image URLs serve **WebP by default** (good for `<img>` tags in browsers). Many agent **URL-to-markdown fetch tools cannot decode WebP** and may fail even though the URL works with `curl`.
    
    For vision analysis, download PNG — append `&format=png` to the design URL, or use a `.png` filename in the path. Open the downloaded file with your image/read tool and analyze layout, copy, colors, and spacing.
    
    Example (design spec for analysis — not a final asset):
    
    ```bash
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.webp?authToken=YOUR_DIFFUI_TOKEN&format=png"
    # or
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.png?authToken=YOUR_DIFFUI_TOKEN"
    ```
    
    Replace `Page_Name` with the slug from each design image URL in this document.
    
    **Note:** Design image URLs are binary assets. URL-fetch-to-markdown tools may fail; download the file instead.
    
    
    **Do not use design crops as final page assets.** Never crop a hero image, photo, or illustration out of the design reference and place that crop in your HTML/CSS. The design image is a **specification only** — generate real high-resolution assets via `build/generate-image` (see **Generating image assets** below). Cropping the design is not a substitute for generation.
    
    The `&crop=x,y,width,height` query param is for **inspection and intermediate pipelines only** (e.g. measuring a region, or feeding a large illustration into image-to-SVG). It must **not** appear in any `<img src>`, CSS `background-image`, or other shipped asset path.
    
    ## Project setup
    
    Inspect the target repository before choosing a stack:
    
    | Situation | What to do |
    |-----------|------------|
    | **Existing project** | Use the framework, tooling, and patterns already present. Do not introduce a different stack. |
    | **Empty repo + linked npm package** (see Brand context) | Scaffold the minimum project that package requires, install it, then implement. Do not default to vanilla HTML/CSS when a brand package is linked. |
    | **Empty repo, no linked package** | Use vanilla HTML, CSS, and JavaScript. |
    
    When a linked npm package implies a specific framework (React, Vue, etc.) or tooling (Tailwind, shadcn CLI), scaffold that stack with sensible defaults — e.g. Next.js or Vite for React-based design systems — even if this document does not spell out every init command.
    
    ## Implementation guidelines
    
    You are an elite frontend engineer and design-to-code specialist. The design image is the primary source of truth; your code is the translation layer. Do not reinterpret or "improve" the design into something generic — reproduce it faithfully.
    
    Before writing code, analyze the image like a design specification:
    
    - **Layout & structure:** overall grid, section ordering, alignment, column logic, content width.
    - **Typography:** extract visible text verbatim; size/weight hierarchy, display vs body contrast, line height, tracking, serif vs sans.
    - **Spacing:** section padding, gutters, gaps, card padding, image-to-text distance. Preserve generous spacing; do not compress.
    - **Color:** background, panels, accents, button fills, text hierarchy, borders, shadows. Preserve the exact palette you observe; do not substitute generic web colors.
    - **Textures & surfaces:** Look for repeating photographic or organic surfaces used as tiled backgrounds — paper grain, linen, concrete, stone, wood grain, fabric weave, film noise, subtle marbling. Note tiling direction if visible: omnidirectional repeat → `both`; stripe or band patterns that repeat on one axis only → `horizontal` or `vertical`. Do **not** generate textures for flat solid fills, simple CSS gradients, hero photos, or illustrations — use CSS or `build/generate-image` instead. Only call `build/create-texture` when a seamless repeating surface is clearly part of the shipped design. Request extra PBR maps (`normal`, `roughness`, etc.) **only** when the user explicitly wants WebGL-style lighting or physically based shading — not for ordinary CSS `background-repeat` tiles.
    - **Components:** buttons (shape, radius, fill vs outline, padding, primary/secondary), cards, inputs, badges, dividers, icons.
    - **Imagery:** Match the container silhouette, not just the asset. Non-rectangular boundaries are first-class layout — implement with clip/mask, not border-radius. Generate high-res images via `build/generate-image`; generate seamless repeating surfaces via `build/create-texture` when the design calls for them; never ship crops from the design reference as final artwork.
    
    Implementation discipline:
    
    - Preserve layout logic, spacing rhythm, section ordering, text/image balance, typography mood, and component styling.
    - Use the actual visible text from the image, not placeholder copy.
    - Match colors and spacing to what you observe, not to defaults.
    - Do not add nested box-in-box wrappers, decorative pills, fake status labels, or micro-UI clutter not in the image.
    - Avoid AI-slop (default purple/blue gradients, glow, glassmorphism, generic card spam) unless the image clearly shows it.
    - Keep the first viewport clean and readable; responsive in spirit while keeping the desktop composition faithful.
    - Follow the **Project setup** rules above: match an existing repo's stack, scaffold for a linked npm package on an empty repo, or use vanilla HTML/CSS/JS when no package is linked.
    
    Resolve ambiguity in this order: preserve the visible design language, then layout/spacing logic, then component family, then mood/polish — only then fall back to a faithful choice. The final result should look like the same design in the image, translated into real code.
    
    ## Generating image assets
    
    When the design needs photos or illustrations (avatars, hero images, product shots, lineup photos, etc.), **generate them via Diffui** — do not use placeholders and **do not crop them out of the design reference**.
    
    
    **Required for all photographic and illustrative content in the page:**
    
    - Hero banners, scene illustrations, artist photos, product shots, and any other raster imagery → `build/generate-image`
    - Use **high** quality + `referenceImageUrl` when recreating a large hero or focal illustration from the design (see **Reference images**).
    - Use **medium** quality for lineup photos, avatars, and card imagery.
    - If generation fails, **retry** (including waiting longer for high-quality hero requests). Do not fall back to a cropped region of the design image as the shipped asset.
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-image`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "A portrait of a man for an avatar",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — plain-text description of the image (describe what you want; no negative prompts).
    - `width` and `height` — **required** on every request. Choose dimensions explicitly for each asset.
    
    **Optional fields:**
    
    - `quality` — `"medium"` (default) or `"high"`. See **Choosing quality** below.
    - `referenceImageUrl` — a Diffui image URL to use as a visual reference. **High quality (`"high"` / gpt-image-2) only.** See **Reference images** below.
    - `transparentBackground` — `true` to generate the asset with a **native alpha channel** (real transparency, not a removed background). **High quality (`"high"` / gpt-image-2) only.** See **Transparent backgrounds** below.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    Download the returned `url` to a local file (see **Local assets**), then reference that path in your HTML/CSS. Do not hotlink the remote URL. The auth token expires after seven days; if generation fails with 403, ask the user to re-copy the build link from Diffui.
    
    To inspect a generated asset with a vision tool, download PNG the same way as design images (`&format=png` or a `.png` path suffix).
    
    ### Choosing quality
    
    Pick `quality` per asset. **Default to medium** — it is faster, cheaper (1¢), and sufficient for most page assets.
    
    | Use **medium** (default, 1¢) | Use **high** (17¢) |
    |------------------------------|---------------------|
    | Profile pictures, avatars | Large hero / banner images |
    | Product shots, thumbnails | Anything needing ~2K resolution |
    | Icons, small decorative images | Illustrations, artistic focal imagery |
    | Most page assets | Main visual focus of the page |
    | | Any asset needing a transparent background |
    
    **Medium example** (avatar):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Professional headshot portrait of a woman, neutral background",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **High example** (hero illustration):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Wide cinematic illustration of a mountain landscape at sunset, painterly style",
      "width": 2048,
      "height": 1536,
      "quality": "high"
    }
    ```
    
    ### Transparent backgrounds (high quality only)
    
    Set `transparentBackground: true` when a **new** generated asset should composite over other page elements — the PNG comes back with a **native alpha channel** from gpt-image-2 in the same billed call. Do **not** generate an opaque image and then call `build/remove-background` for new assets; that costs an extra step and produces a worse matte.
    
    **Request transparency when the asset floats over other UI:**
    
    - Hero images or backdrop artwork layered over other elements
    - Overlay illustrations and decorative layers
    - Isolated products or objects (product on nothing, not product on white)
    - Icons, charts, and other assets placed on colored/typographic backgrounds
    
    **Keep it opaque (omit the flag) when:**
    
    - The asset is a full-bleed photo, scene, or filled background
    - The image fills its own rectangle and nothing shows through it
    
    Rules: requires `quality: "high"` (400 otherwise) and follows the high-quality (gpt-image-2) size rules. Reference the downloaded asset as PNG (or the served WebP, which also keeps alpha) — never re-encode it to JPEG or flatten it onto a background color.
    
    **Transparent example** (floating product cutout):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Studio shot of a single red running sneaker, floating at a three-quarter angle",
      "width": 1024,
      "height": 1024,
      "quality": "high",
      "transparentBackground": true
    }
    ```
    
    `build/remove-background` still exists for bitmaps you already have (user uploads, previously generated images) — see **Removing image backgrounds**.
    
    ### Reference images (high quality only)
    
    Use `referenceImageUrl` **only** when you need gpt-image-2 to recreate a **standalone background or illustration** that appears inside the design — not the full page screenshot.
    
    **Use a reference image when:**
    
    - The design shows a large hero illustration, scene, or photographic background that must become a real `<img>` or CSS background asset.
    - You need a **full-resolution, isolated** version of that artwork (no navigation, buttons, headlines, or other UI chrome).
    - A plain-text prompt alone would not preserve the composition, subjects, palette, or graphic details visible in the design.
    
    **Do not use a reference image when:**
    
    - Generating avatars, product shots, icons, thumbnails, or other assets that are **not** copied from a specific region of the design image.
    - The asset is simple enough to describe accurately with `prompt` alone.
    - You want to regenerate the **entire page** or any layout that includes UI elements — implement those in HTML/CSS from the design reference instead.
    
    Pass a Diffui URL from this document (design image or a previously generated asset). The `authToken` in `referenceImageUrl` must match `authToken` in the request body. `referenceImageUrl` is rejected unless `quality` is `"high"`.
    
    **High example** (isolated hero illustration from the design):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Recreate only the hero illustration from the reference: saxophonist in black suit and fedora against a New Orleans skyline, yellow sun disc, expressive JAZZ lettering, and purple brushstroke banner — no navigation, buttons, headlines, or page chrome. Match the reference composition, subjects, and color palette.",
      "width": 2048,
      "height": 1536,
      "quality": "high",
      "referenceImageUrl": "https://diffui.ai/image/Prompt.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    ### Generation timing
    
    - Each image request typically takes **around 60 seconds**; occasionally one can take **up to 3 minutes**.
    - Wait for each request to finish before using its returned `url`.
    - When you need **multiple assets**, send **separate requests in parallel** whenever you can (concurrent POSTs with different prompts and dimensions). Parallel generation is much faster than generating images one at a time.
    
    ### Medium quality (z-image) size rules
    
    Used when `quality` is `"medium"` or omitted. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 512 px |
    | Maximum edge | 2048 px |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** **512×512**
    - **Product shots / cards:** **512×768** or **768×512**
    - **Medium landscape panels:** **1024×768**
    
    Invalid dimensions return HTTP 400 with an error message.
    
    ### High quality (gpt-image-2) size rules
    
    Used when `quality` is `"high"`. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 16 px |
    | Maximum edge | 2048 px |
    | Multiple of | 16 |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    | Minimum total pixels | 655,360 |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** use **816×816** (smallest valid square).
    - **Landscape hero / banner:** **2048×1536**
    - **Portrait hero:** **1536×2048**
    - **Wide thumbnails:** e.g. **1280×512** (must still meet the pixel minimum)
    
    Invalid dimensions return HTTP 400 with an error message. There is no default size — always specify `width` and `height` intentionally for each asset.
    
    ## Seamless background textures
    
    When the design uses a **repeating photographic or organic surface** as a background (paper grain, linen, concrete, stone, fabric weave, subtle noise overlay), generate a seamless tile via Diffui — do not approximate with a cropped region from the design reference and do not use `build/generate-image` for textures.
    
    **Generate a texture when:**
    
    - The design shows a surface meant to tile with `background-repeat` (paper, linen, concrete, fabric, stone, film grain, etc.)
    - A plain CSS color or gradient cannot faithfully reproduce the visible surface
    
    **Do not generate a texture when:**
    
    - The background is a flat solid color or a simple linear/radial gradient → use CSS
    - The surface is glass, blur, or frosted effects → use CSS `backdrop-filter` or similar
    - The asset is a hero photo, illustration, or product shot → use `build/generate-image`
    - The pattern is a standard UI motif achievable with CSS alone
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-texture`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "warm off-white paper grain, subtle fiber texture",
      "tilingMode": "both"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — describe the surface or material only (what you want the tile to look like).
    
    **Optional fields:**
    
    - `tilingMode` — `"both"` (default), `"horizontal"`, or `"vertical"`. Use `"both"` for omnidirectional repeats. Use `"horizontal"` or `"vertical"` only when the design clearly repeats on one axis (e.g. horizontal wood slats or vertical fabric stripes).
    - `maps` — optional array of PBR map types to generate alongside the seamless tile. Allowed values: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit it or pass an empty array to use the Fal model default. **Only request specific maps when the user explicitly wants WebGL-style lighting or physically based shading** — not for standard CSS repeating backgrounds.
    
    Example with a normal map for a lit 3D surface:
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "weathered brushed steel, fine directional scratches",
      "tilingMode": "both",
      "maps": ["normal", "roughness"]
    }
    ```
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_texture.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 1024,
      "height": 1024,
      "tilingMode": "both",
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_texture_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_texture_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    When `maps` is omitted, Diffui omits the field from the Fal request so the model uses its default maps. If Fal returns map images, Diffui includes them in the `maps` response array.
    
    Output is always **1024×1024**. Download the returned `url` locally (see **Local assets**), then reference that path in CSS:
    
    | `tilingMode` | CSS `background-repeat` |
    |---------------------|--------------------------------|
    | `both` | `repeat` |
    | `horizontal` | `repeat-x` |
    | `vertical` | `repeat-y` |
    
    - Cost: **3¢** per call for the seamless tile alone; **+1¢** per additional PBR map at 1024×1024 (e.g. tile + normal = 4¢).
    - Typical workflow: identify the surface during design analysis → generate once → apply as a repeating CSS background. Request extra maps only for WebGL / Three.js materials with real-time lighting.
    
    ## Removing image backgrounds
    
    When an **already-sourced** bitmap needs a transparent cutout (a user-provided product photo, an existing profile picture, a previously generated image), remove its background via Diffui. The endpoint accepts either a remote image URL (JSON) or a **local file uploaded directly** (multipart) — use the upload form for user-provided images that only exist on disk.
    
    For **new** assets that need transparency, do not use this endpoint — generate them with native alpha instead (`transparentBackground: true` on `build/generate-image` at high quality; see **Transparent backgrounds**). That is one billed call with a real alpha channel rather than a generate-then-cut-out pipeline.
    
    **Endpoint:** `POST https://diffui.ai/api/build/remove-background`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    - `imageUrl` — a publicly fetchable image URL. Use a Diffui asset URL from `build/generate-image` (include the `authToken` query param).
    
    ### Option B — local file upload (multipart)
    
    Send the file bytes directly as `multipart/form-data` — no hosting required:
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/remove-background" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/product-photo.png"
    ```
    
    - `file` — the image file (PNG, JPEG, or WebP; max 25MB).
    - Pass exactly one of `imageUrl` or `file`, not both.
    
    **Required in both forms:**
    
    - `authToken` — the same token from this build link.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_cutout.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    - Cost: **1¢** per call.
    - Typical workflow: cut out a user-provided or previously generated bitmap. For new assets, request native transparency at generation time instead (see **Transparent backgrounds**).
    - Download the returned `url` locally before using it in code (see **Local assets**).
    - The returned image is a transparent PNG served as WebP for display; use `&format=png` when you need the alpha channel for inspection.
    
    ## Generating PBR maps from an image
    
    When an existing image needs WebGL-style lighting — normal, height (displacement), roughness, basecolor (albedo), or metalness maps — generate the maps via Diffui. Use this for hero artwork, product cutouts, or any raster that will be lit in a shader. **Only call it when the user explicitly wants physically based lighting or displacement**, not for ordinary flat imagery.
    
    Like remove-background, the input is either a remote URL (JSON) or a **local file uploaded directly** (multipart).
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-maps`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "maps": ["normal", "height", "roughness"]
    }
    ```
    
    ### Option B — local file upload (multipart)
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/create-maps" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/card.png" \
      -F "maps=normal,height,roughness"
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `imageUrl` (publicly fetchable URL) or `file` (PNG, JPEG, or WebP; max 25MB).
    
    **Optional fields:**
    
    - `maps` — which maps to predict: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit to generate **all five**. Request only the maps your shader actually samples — cost scales per map.
    
    **Response (JSON):**
    
    ```json
    {
      "width": 1024,
      "height": 1536,
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_example_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "height",
          "url": "https://diffui.ai/image/generated_example_height.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_example_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    Maps match the input image dimensions and share its UV space — sample them with the same coordinates as the source texture.
    
    - Cost: **1¢** base + **1¢ per megapixel per map** (e.g. a 1024×1024 input with all 5 maps = 6¢).
    - Download each returned map `url` locally before referencing it (see **Local assets**); use `&format=png` when the shader pipeline needs lossless data.
    - Unlike `build/create-texture` (which *generates a new seamless tile* from a text prompt), `build/create-maps` derives maps for an image you already have.
    
    ## Generating SVG assets
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-svg`
    
    **Headers:** `Content-Type: application/json`
    
    Pick the mode by asset type — **do not use image-to-SVG for small UI icons**; vectorizing cropped icon pixels produces poor results. Use **text-to-SVG** for icons instead.
    
    ### Custom icons → text-to-SVG only
    
    Use Quiver **text-to-SVG** for **non-standard icons** not available in your project's icon library — for example a ferris wheel for a county fair or a unique pictogram from the design.
    
    **Do not generate SVGs for standard UI icons** (arrows, chevrons, menu, close, search, social logos, etc.). Use the icon pack your project already uses (Lucide, Heroicons, Phosphor, Material Symbols, etc.).
    
    **Do not use image-to-SVG for icons** — even with a tight crop from the design, results are usually unusable. Describe the icon in a `prompt` instead.
    
    **Before generating:** search the icon pack for a close match. Only call `build/generate-svg` when no suitable icon exists.
    
    Describe the icon in `prompt`. Optional `instructions` sets style (flat monochrome, line weight, etc.). **Always set `viewBox`** so the artwork fits the canvas and is not clipped. Use a square viewBox for icons (e.g. 64×64).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Minimal ferris wheel icon for a county fair app, single-color line art",
      "instructions": "Flat monochrome icon. Draw entirely inside the viewBox with comfortable padding; do not extend past the canvas edges.",
      "viewBox": { "minX": 0, "minY": 0, "width": 64, "height": 64 }
    }
    ```
    
    ### Complex illustrations → image-to-SVG only
    
    Use **image-to-SVG** only for **large or complex artwork** that should become a vector illustration — for example a detailed logo mark, badge, or decorative graphic region from the design. **Not for footer icons, toolbar glyphs, or other small UI pictograms.**
    
    1. Download the design as PNG (`&format=png`) and inspect it.
    2. Measure the illustration's bounding box in pixels (not a tiny icon crop).
    3. Fetch a crop around that region: `&format=png&crop=x,y,width,height` — no labels or neighboring UI unless they are part of the artwork.
    4. Pass that URL as `imageUrl`. Use a viewBox that matches the illustration's aspect ratio and scale (e.g. 512×512 for a square logo).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/Hero.webp?authToken=YOUR_DIFFUI_TOKEN&format=png&crop=400,80,640,480",
      "viewBox": { "minX": 0, "minY": 0, "width": 512, "height": 384 }
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `prompt` (text-to-SVG, **icons only**) or `imageUrl` (image-to-SVG, **illustrations only**).
    - `viewBox` — SVG canvas forwarded to Quiver as `attributes.viewBox`. Set `minX` and `minY` to `0` unless you have a reason not to. Artwork must fit entirely inside this box with padding.
    
    **Optional field:**
    
    - `instructions` — text-to-SVG only; style guidance for Quiver. Mention that the icon must stay inside the viewBox.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.svg?authToken=YOUR_DIFFUI_TOKEN",
      "width": 24,
      "height": 24
    }
    ```
    
    - Cost: **2¢** per SVG.
    - Download the returned `url` locally before using it inline or as `<img src>` (see **Local assets**).
    
    
  2. 13Creative direction
    Illustration for Make room for the collection

    Make room for the collection

    Conversation prompt
    Let's add a notice section for collection, which is right above story, without the header: Create a web page implementation from the following instructions: https://diffui.ai/build/Collection_Listing_Page.md

    Original design instructionsFrom diffui.ai ↗

    Original DiffUI prompt
    Create a collection listing page for The Renaissance Edition with a refined editorial layout, premium serif typography, and a curated grid of classical objects and artworks.
    https://diffui.ai/build/Collection_Listing_Page.md

    The original link requires DiffUI access. Private access tokens are omitted here.

    Full DiffUI build instructions

    The complete downloaded document, with access tokens replaced by YOUR_DIFFUI_TOKEN.

    DiffUI build document
    # Diffui agent build instructions
    
    > **Read this first — if a summarizing fetch tool retrieved this URL, you are reading a summary, not this document.**
    >
    > Tools such as WebFetch pass a page through a summarizer model before you see it. On this
    > document that routinely drops the REST endpoints and the design image URL — silently, with
    > no error and no sign that anything is missing. Agents have shipped hand-drawn placeholder
    > art because the endpoints they needed were summarized away.
    >
    > **Check before you build.** The complete document contains all of:
    >
    > - Five `POST https://diffui.ai/api/build/...` endpoint blocks — generate-image, create-texture, remove-background, create-maps, generate-svg — each with a JSON request body
    > - Every design image URL, under **Design reference**
    > - The user's original prompt, quoted in full
    >
    > If any of those are missing from what you are reading, you have a summary. Download the real
    > file and read that instead:
    >
    > ```bash
    > curl -sSL -o BUILD.md "https://diffui.ai/build/Collection_Listing_Page.md?authToken=YOUR_DIFFUI_TOKEN"
    > ```
    >
    > Then open `BUILD.md` with your file-read tool. Do not implement from a summary.
    
    
    ## Design reference
    
    View the design image (primary source of truth):
    
    https://diffui.ai/image/Collection_Listing_Page.webp?authToken=YOUR_DIFFUI_TOKEN
    
    Download that image to a local file and inspect it before writing code (see **Local assets** below). Reproduce its layout, typography, spacing, colors, and components as faithfully as possible.
    
    
    ## Original user prompt
    
    The user's original prompt for this design was:
    
    > Create a collection listing page for The Renaissance Edition with a refined editorial layout, premium serif typography, and a curated grid of classical objects and artworks.
    
    Keep this intent in mind when implementing.
    
    
    
    
    
    ## Local assets
    
    **Required:** download every Diffui URL in this document to local project files **before** referencing them in HTML, CSS, or JavaScript. Do not hotlink remote Diffui URLs in the implementation — auth tokens expire and runtime fetches are unreliable.
    
    This applies to:
    
    - Design reference images (inspect locally before writing UI code)
    - Images returned from asset generation (`build/generate-image`, `build/generate-svg`, `build/remove-background`, `build/create-texture`, and `build/create-maps`)
    - Any other Diffui image URL in this document
    
    Save downloads under a project folder such as `assets/` and reference those local paths in code.
    
    ### Downloading design images
    
    Design renders are visual specifications. **Download each image and inspect it before writing code.** Do not rely on text summaries alone.
    
    
    Image URLs serve **WebP by default** (good for `<img>` tags in browsers). Many agent **URL-to-markdown fetch tools cannot decode WebP** and may fail even though the URL works with `curl`.
    
    For vision analysis, download PNG — append `&format=png` to the design URL, or use a `.png` filename in the path. Open the downloaded file with your image/read tool and analyze layout, copy, colors, and spacing.
    
    Example (design spec for analysis — not a final asset):
    
    ```bash
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.webp?authToken=YOUR_DIFFUI_TOKEN&format=png"
    # or
    curl -L -o assets/page.png "https://diffui.ai/image/Page_Name.png?authToken=YOUR_DIFFUI_TOKEN"
    ```
    
    Replace `Page_Name` with the slug from each design image URL in this document.
    
    **Note:** Design image URLs are binary assets. URL-fetch-to-markdown tools may fail; download the file instead.
    
    
    **Do not use design crops as final page assets.** Never crop a hero image, photo, or illustration out of the design reference and place that crop in your HTML/CSS. The design image is a **specification only** — generate real high-resolution assets via `build/generate-image` (see **Generating image assets** below). Cropping the design is not a substitute for generation.
    
    The `&crop=x,y,width,height` query param is for **inspection and intermediate pipelines only** (e.g. measuring a region, or feeding a large illustration into image-to-SVG). It must **not** appear in any `<img src>`, CSS `background-image`, or other shipped asset path.
    
    ## Project setup
    
    Inspect the target repository before choosing a stack:
    
    | Situation | What to do |
    |-----------|------------|
    | **Existing project** | Use the framework, tooling, and patterns already present. Do not introduce a different stack. |
    | **Empty repo + linked npm package** (see Brand context) | Scaffold the minimum project that package requires, install it, then implement. Do not default to vanilla HTML/CSS when a brand package is linked. |
    | **Empty repo, no linked package** | Use vanilla HTML, CSS, and JavaScript. |
    
    When a linked npm package implies a specific framework (React, Vue, etc.) or tooling (Tailwind, shadcn CLI), scaffold that stack with sensible defaults — e.g. Next.js or Vite for React-based design systems — even if this document does not spell out every init command.
    
    ## Implementation guidelines
    
    You are an elite frontend engineer and design-to-code specialist. The design image is the primary source of truth; your code is the translation layer. Do not reinterpret or "improve" the design into something generic — reproduce it faithfully.
    
    Before writing code, analyze the image like a design specification:
    
    - **Layout & structure:** overall grid, section ordering, alignment, column logic, content width.
    - **Typography:** extract visible text verbatim; size/weight hierarchy, display vs body contrast, line height, tracking, serif vs sans.
    - **Spacing:** section padding, gutters, gaps, card padding, image-to-text distance. Preserve generous spacing; do not compress.
    - **Color:** background, panels, accents, button fills, text hierarchy, borders, shadows. Preserve the exact palette you observe; do not substitute generic web colors.
    - **Textures & surfaces:** Look for repeating photographic or organic surfaces used as tiled backgrounds — paper grain, linen, concrete, stone, wood grain, fabric weave, film noise, subtle marbling. Note tiling direction if visible: omnidirectional repeat → `both`; stripe or band patterns that repeat on one axis only → `horizontal` or `vertical`. Do **not** generate textures for flat solid fills, simple CSS gradients, hero photos, or illustrations — use CSS or `build/generate-image` instead. Only call `build/create-texture` when a seamless repeating surface is clearly part of the shipped design. Request extra PBR maps (`normal`, `roughness`, etc.) **only** when the user explicitly wants WebGL-style lighting or physically based shading — not for ordinary CSS `background-repeat` tiles.
    - **Components:** buttons (shape, radius, fill vs outline, padding, primary/secondary), cards, inputs, badges, dividers, icons.
    - **Imagery:** Match the container silhouette, not just the asset. Non-rectangular boundaries are first-class layout — implement with clip/mask, not border-radius. Generate high-res images via `build/generate-image`; generate seamless repeating surfaces via `build/create-texture` when the design calls for them; never ship crops from the design reference as final artwork.
    
    Implementation discipline:
    
    - Preserve layout logic, spacing rhythm, section ordering, text/image balance, typography mood, and component styling.
    - Use the actual visible text from the image, not placeholder copy.
    - Match colors and spacing to what you observe, not to defaults.
    - Do not add nested box-in-box wrappers, decorative pills, fake status labels, or micro-UI clutter not in the image.
    - Avoid AI-slop (default purple/blue gradients, glow, glassmorphism, generic card spam) unless the image clearly shows it.
    - Keep the first viewport clean and readable; responsive in spirit while keeping the desktop composition faithful.
    - Follow the **Project setup** rules above: match an existing repo's stack, scaffold for a linked npm package on an empty repo, or use vanilla HTML/CSS/JS when no package is linked.
    
    Resolve ambiguity in this order: preserve the visible design language, then layout/spacing logic, then component family, then mood/polish — only then fall back to a faithful choice. The final result should look like the same design in the image, translated into real code.
    
    ## Generating image assets
    
    When the design needs photos or illustrations (avatars, hero images, product shots, lineup photos, etc.), **generate them via Diffui** — do not use placeholders and **do not crop them out of the design reference**.
    
    
    **Required for all photographic and illustrative content in the page:**
    
    - Hero banners, scene illustrations, artist photos, product shots, and any other raster imagery → `build/generate-image`
    - Use **high** quality + `referenceImageUrl` when recreating a large hero or focal illustration from the design (see **Reference images**).
    - Use **medium** quality for lineup photos, avatars, and card imagery.
    - If generation fails, **retry** (including waiting longer for high-quality hero requests). Do not fall back to a cropped region of the design image as the shipped asset.
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-image`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "A portrait of a man for an avatar",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — plain-text description of the image (describe what you want; no negative prompts).
    - `width` and `height` — **required** on every request. Choose dimensions explicitly for each asset.
    
    **Optional fields:**
    
    - `quality` — `"medium"` (default) or `"high"`. See **Choosing quality** below.
    - `referenceImageUrl` — a Diffui image URL to use as a visual reference. **High quality (`"high"` / gpt-image-2) only.** See **Reference images** below.
    - `transparentBackground` — `true` to generate the asset with a **native alpha channel** (real transparency, not a removed background). **High quality (`"high"` / gpt-image-2) only.** See **Transparent backgrounds** below.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    Download the returned `url` to a local file (see **Local assets**), then reference that path in your HTML/CSS. Do not hotlink the remote URL. The auth token expires after seven days; if generation fails with 403, ask the user to re-copy the build link from Diffui.
    
    To inspect a generated asset with a vision tool, download PNG the same way as design images (`&format=png` or a `.png` path suffix).
    
    ### Choosing quality
    
    Pick `quality` per asset. **Default to medium** — it is faster, cheaper (1¢), and sufficient for most page assets.
    
    | Use **medium** (default, 1¢) | Use **high** (17¢) |
    |------------------------------|---------------------|
    | Profile pictures, avatars | Large hero / banner images |
    | Product shots, thumbnails | Anything needing ~2K resolution |
    | Icons, small decorative images | Illustrations, artistic focal imagery |
    | Most page assets | Main visual focus of the page |
    | | Any asset needing a transparent background |
    
    **Medium example** (avatar):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Professional headshot portrait of a woman, neutral background",
      "width": 512,
      "height": 512,
      "quality": "medium"
    }
    ```
    
    **High example** (hero illustration):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Wide cinematic illustration of a mountain landscape at sunset, painterly style",
      "width": 2048,
      "height": 1536,
      "quality": "high"
    }
    ```
    
    ### Transparent backgrounds (high quality only)
    
    Set `transparentBackground: true` when a **new** generated asset should composite over other page elements — the PNG comes back with a **native alpha channel** from gpt-image-2 in the same billed call. Do **not** generate an opaque image and then call `build/remove-background` for new assets; that costs an extra step and produces a worse matte.
    
    **Request transparency when the asset floats over other UI:**
    
    - Hero images or backdrop artwork layered over other elements
    - Overlay illustrations and decorative layers
    - Isolated products or objects (product on nothing, not product on white)
    - Icons, charts, and other assets placed on colored/typographic backgrounds
    
    **Keep it opaque (omit the flag) when:**
    
    - The asset is a full-bleed photo, scene, or filled background
    - The image fills its own rectangle and nothing shows through it
    
    Rules: requires `quality: "high"` (400 otherwise) and follows the high-quality (gpt-image-2) size rules. Reference the downloaded asset as PNG (or the served WebP, which also keeps alpha) — never re-encode it to JPEG or flatten it onto a background color.
    
    **Transparent example** (floating product cutout):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Studio shot of a single red running sneaker, floating at a three-quarter angle",
      "width": 1024,
      "height": 1024,
      "quality": "high",
      "transparentBackground": true
    }
    ```
    
    `build/remove-background` still exists for bitmaps you already have (user uploads, previously generated images) — see **Removing image backgrounds**.
    
    ### Reference images (high quality only)
    
    Use `referenceImageUrl` **only** when you need gpt-image-2 to recreate a **standalone background or illustration** that appears inside the design — not the full page screenshot.
    
    **Use a reference image when:**
    
    - The design shows a large hero illustration, scene, or photographic background that must become a real `<img>` or CSS background asset.
    - You need a **full-resolution, isolated** version of that artwork (no navigation, buttons, headlines, or other UI chrome).
    - A plain-text prompt alone would not preserve the composition, subjects, palette, or graphic details visible in the design.
    
    **Do not use a reference image when:**
    
    - Generating avatars, product shots, icons, thumbnails, or other assets that are **not** copied from a specific region of the design image.
    - The asset is simple enough to describe accurately with `prompt` alone.
    - You want to regenerate the **entire page** or any layout that includes UI elements — implement those in HTML/CSS from the design reference instead.
    
    Pass a Diffui URL from this document (design image or a previously generated asset). The `authToken` in `referenceImageUrl` must match `authToken` in the request body. `referenceImageUrl` is rejected unless `quality` is `"high"`.
    
    **High example** (isolated hero illustration from the design):
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Recreate only the hero illustration from the reference: saxophonist in black suit and fedora against a New Orleans skyline, yellow sun disc, expressive JAZZ lettering, and purple brushstroke banner — no navigation, buttons, headlines, or page chrome. Match the reference composition, subjects, and color palette.",
      "width": 2048,
      "height": 1536,
      "quality": "high",
      "referenceImageUrl": "https://diffui.ai/image/Collection_Listing_Page.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    ### Generation timing
    
    - Each image request typically takes **around 60 seconds**; occasionally one can take **up to 3 minutes**.
    - Wait for each request to finish before using its returned `url`.
    - When you need **multiple assets**, send **separate requests in parallel** whenever you can (concurrent POSTs with different prompts and dimensions). Parallel generation is much faster than generating images one at a time.
    
    ### Medium quality (z-image) size rules
    
    Used when `quality` is `"medium"` or omitted. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 512 px |
    | Maximum edge | 2048 px |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** **512×512**
    - **Product shots / cards:** **512×768** or **768×512**
    - **Medium landscape panels:** **1024×768**
    
    Invalid dimensions return HTTP 400 with an error message.
    
    ### High quality (gpt-image-2) size rules
    
    Used when `quality` is `"high"`. Every `width`/`height` pair must satisfy all of:
    
    | Constraint | Value |
    |------------|-------|
    | Minimum edge | 16 px |
    | Maximum edge | 2048 px |
    | Multiple of | 16 |
    | Maximum aspect ratio | 3:1 (neither side more than 3× the other) |
    | Minimum total pixels | 655,360 |
    
    **Sizing guidance:**
    
    - **Avatars / icons / small squares:** use **816×816** (smallest valid square).
    - **Landscape hero / banner:** **2048×1536**
    - **Portrait hero:** **1536×2048**
    - **Wide thumbnails:** e.g. **1280×512** (must still meet the pixel minimum)
    
    Invalid dimensions return HTTP 400 with an error message. There is no default size — always specify `width` and `height` intentionally for each asset.
    
    ## Seamless background textures
    
    When the design uses a **repeating photographic or organic surface** as a background (paper grain, linen, concrete, stone, fabric weave, subtle noise overlay), generate a seamless tile via Diffui — do not approximate with a cropped region from the design reference and do not use `build/generate-image` for textures.
    
    **Generate a texture when:**
    
    - The design shows a surface meant to tile with `background-repeat` (paper, linen, concrete, fabric, stone, film grain, etc.)
    - A plain CSS color or gradient cannot faithfully reproduce the visible surface
    
    **Do not generate a texture when:**
    
    - The background is a flat solid color or a simple linear/radial gradient → use CSS
    - The surface is glass, blur, or frosted effects → use CSS `backdrop-filter` or similar
    - The asset is a hero photo, illustration, or product shot → use `build/generate-image`
    - The pattern is a standard UI motif achievable with CSS alone
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-texture`
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "warm off-white paper grain, subtle fiber texture",
      "tilingMode": "both"
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link (`YOUR_DIFFUI_TOKEN`).
    - `prompt` — describe the surface or material only (what you want the tile to look like).
    
    **Optional fields:**
    
    - `tilingMode` — `"both"` (default), `"horizontal"`, or `"vertical"`. Use `"both"` for omnidirectional repeats. Use `"horizontal"` or `"vertical"` only when the design clearly repeats on one axis (e.g. horizontal wood slats or vertical fabric stripes).
    - `maps` — optional array of PBR map types to generate alongside the seamless tile. Allowed values: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit it or pass an empty array to use the Fal model default. **Only request specific maps when the user explicitly wants WebGL-style lighting or physically based shading** — not for standard CSS repeating backgrounds.
    
    Example with a normal map for a lit 3D surface:
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "weathered brushed steel, fine directional scratches",
      "tilingMode": "both",
      "maps": ["normal", "roughness"]
    }
    ```
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_texture.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 1024,
      "height": 1024,
      "tilingMode": "both",
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_texture_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_texture_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    When `maps` is omitted, Diffui omits the field from the Fal request so the model uses its default maps. If Fal returns map images, Diffui includes them in the `maps` response array.
    
    Output is always **1024×1024**. Download the returned `url` locally (see **Local assets**), then reference that path in CSS:
    
    | `tilingMode` | CSS `background-repeat` |
    |---------------------|--------------------------------|
    | `both` | `repeat` |
    | `horizontal` | `repeat-x` |
    | `vertical` | `repeat-y` |
    
    - Cost: **3¢** per call for the seamless tile alone; **+1¢** per additional PBR map at 1024×1024 (e.g. tile + normal = 4¢).
    - Typical workflow: identify the surface during design analysis → generate once → apply as a repeating CSS background. Request extra maps only for WebGL / Three.js materials with real-time lighting.
    
    ## Removing image backgrounds
    
    When an **already-sourced** bitmap needs a transparent cutout (a user-provided product photo, an existing profile picture, a previously generated image), remove its background via Diffui. The endpoint accepts either a remote image URL (JSON) or a **local file uploaded directly** (multipart) — use the upload form for user-provided images that only exist on disk.
    
    For **new** assets that need transparency, do not use this endpoint — generate them with native alpha instead (`transparentBackground: true` on `build/generate-image` at high quality; see **Transparent backgrounds**). That is one billed call with a real alpha channel rather than a generate-then-cut-out pipeline.
    
    **Endpoint:** `POST https://diffui.ai/api/build/remove-background`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN"
    }
    ```
    
    - `imageUrl` — a publicly fetchable image URL. Use a Diffui asset URL from `build/generate-image` (include the `authToken` query param).
    
    ### Option B — local file upload (multipart)
    
    Send the file bytes directly as `multipart/form-data` — no hosting required:
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/remove-background" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/product-photo.png"
    ```
    
    - `file` — the image file (PNG, JPEG, or WebP; max 25MB).
    - Pass exactly one of `imageUrl` or `file`, not both.
    
    **Required in both forms:**
    
    - `authToken` — the same token from this build link.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_cutout.webp?authToken=YOUR_DIFFUI_TOKEN",
      "width": 512,
      "height": 512
    }
    ```
    
    - Cost: **1¢** per call.
    - Typical workflow: cut out a user-provided or previously generated bitmap. For new assets, request native transparency at generation time instead (see **Transparent backgrounds**).
    - Download the returned `url` locally before using it in code (see **Local assets**).
    - The returned image is a transparent PNG served as WebP for display; use `&format=png` when you need the alpha channel for inspection.
    
    ## Generating PBR maps from an image
    
    When an existing image needs WebGL-style lighting — normal, height (displacement), roughness, basecolor (albedo), or metalness maps — generate the maps via Diffui. Use this for hero artwork, product cutouts, or any raster that will be lit in a shader. **Only call it when the user explicitly wants physically based lighting or displacement**, not for ordinary flat imagery.
    
    Like remove-background, the input is either a remote URL (JSON) or a **local file uploaded directly** (multipart).
    
    **Endpoint:** `POST https://diffui.ai/api/build/create-maps`
    
    ### Option A — remote image URL (JSON)
    
    **Headers:** `Content-Type: application/json`
    
    **Body (JSON):**
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/generated_example.webp?authToken=YOUR_DIFFUI_TOKEN",
      "maps": ["normal", "height", "roughness"]
    }
    ```
    
    ### Option B — local file upload (multipart)
    
    ```bash
    curl -X POST "https://diffui.ai/api/build/create-maps" \
      -F "authToken=YOUR_DIFFUI_TOKEN" \
      -F "file=@assets/card.png" \
      -F "maps=normal,height,roughness"
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `imageUrl` (publicly fetchable URL) or `file` (PNG, JPEG, or WebP; max 25MB).
    
    **Optional fields:**
    
    - `maps` — which maps to predict: `"basecolor"`, `"normal"`, `"roughness"`, `"metalness"`, `"height"`. Omit to generate **all five**. Request only the maps your shader actually samples — cost scales per map.
    
    **Response (JSON):**
    
    ```json
    {
      "width": 1024,
      "height": 1536,
      "maps": [
        {
          "type": "normal",
          "url": "https://diffui.ai/image/generated_example_normal.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "height",
          "url": "https://diffui.ai/image/generated_example_height.webp?authToken=YOUR_DIFFUI_TOKEN"
        },
        {
          "type": "roughness",
          "url": "https://diffui.ai/image/generated_example_roughness.webp?authToken=YOUR_DIFFUI_TOKEN"
        }
      ]
    }
    ```
    
    Maps match the input image dimensions and share its UV space — sample them with the same coordinates as the source texture.
    
    - Cost: **1¢** base + **1¢ per megapixel per map** (e.g. a 1024×1024 input with all 5 maps = 6¢).
    - Download each returned map `url` locally before referencing it (see **Local assets**); use `&format=png` when the shader pipeline needs lossless data.
    - Unlike `build/create-texture` (which *generates a new seamless tile* from a text prompt), `build/create-maps` derives maps for an image you already have.
    
    ## Generating SVG assets
    
    **Endpoint:** `POST https://diffui.ai/api/build/generate-svg`
    
    **Headers:** `Content-Type: application/json`
    
    Pick the mode by asset type — **do not use image-to-SVG for small UI icons**; vectorizing cropped icon pixels produces poor results. Use **text-to-SVG** for icons instead.
    
    ### Custom icons → text-to-SVG only
    
    Use Quiver **text-to-SVG** for **non-standard icons** not available in your project's icon library — for example a ferris wheel for a county fair or a unique pictogram from the design.
    
    **Do not generate SVGs for standard UI icons** (arrows, chevrons, menu, close, search, social logos, etc.). Use the icon pack your project already uses (Lucide, Heroicons, Phosphor, Material Symbols, etc.).
    
    **Do not use image-to-SVG for icons** — even with a tight crop from the design, results are usually unusable. Describe the icon in a `prompt` instead.
    
    **Before generating:** search the icon pack for a close match. Only call `build/generate-svg` when no suitable icon exists.
    
    Describe the icon in `prompt`. Optional `instructions` sets style (flat monochrome, line weight, etc.). **Always set `viewBox`** so the artwork fits the canvas and is not clipped. Use a square viewBox for icons (e.g. 64×64).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "prompt": "Minimal ferris wheel icon for a county fair app, single-color line art",
      "instructions": "Flat monochrome icon. Draw entirely inside the viewBox with comfortable padding; do not extend past the canvas edges.",
      "viewBox": { "minX": 0, "minY": 0, "width": 64, "height": 64 }
    }
    ```
    
    ### Complex illustrations → image-to-SVG only
    
    Use **image-to-SVG** only for **large or complex artwork** that should become a vector illustration — for example a detailed logo mark, badge, or decorative graphic region from the design. **Not for footer icons, toolbar glyphs, or other small UI pictograms.**
    
    1. Download the design as PNG (`&format=png`) and inspect it.
    2. Measure the illustration's bounding box in pixels (not a tiny icon crop).
    3. Fetch a crop around that region: `&format=png&crop=x,y,width,height` — no labels or neighboring UI unless they are part of the artwork.
    4. Pass that URL as `imageUrl`. Use a viewBox that matches the illustration's aspect ratio and scale (e.g. 512×512 for a square logo).
    
    ```json
    {
      "authToken": "YOUR_DIFFUI_TOKEN",
      "imageUrl": "https://diffui.ai/image/Hero.webp?authToken=YOUR_DIFFUI_TOKEN&format=png&crop=400,80,640,480",
      "viewBox": { "minX": 0, "minY": 0, "width": 512, "height": 384 }
    }
    ```
    
    **Required fields:**
    
    - `authToken` — the same token from this build link.
    - Exactly one of `prompt` (text-to-SVG, **icons only**) or `imageUrl` (image-to-SVG, **illustrations only**).
    - `viewBox` — SVG canvas forwarded to Quiver as `attributes.viewBox`. Set `minX` and `minY` to `0` unless you have a reason not to. Artwork must fit entirely inside this box with padding.
    
    **Optional field:**
    
    - `instructions` — text-to-SVG only; style guidance for Quiver. Mention that the icon must stay inside the viewBox.
    
    **Response (JSON):**
    
    ```json
    {
      "url": "https://diffui.ai/image/generated_example.svg?authToken=YOUR_DIFFUI_TOKEN",
      "width": 24,
      "height": 24
    }
    ```
    
    - Cost: **2¢** per SVG.
    - Download the returned `url` locally before using it inline or as `<img src>` (see **Local assets**).
    
    
  3. 14Creative direction
    Illustration for A new sculptural composition

    A new sculptural composition

    Conversation prompt
    In the footer, we're going to replace the bust 3D with the vase 3D and the column 3D using higgsfield. Let's make the footer where the bust is a little taller. But you know that bust in 3D is going to be replaced by the base and a column.

    Accompanying referenceCarved vase, Corinthian column, and the existing footer

Chapter 04 / Movement, atmosphere & light

Bringing it to life

  1. 15Creative direction
    Illustration for Space and scroll

    Space and scroll

    Conversation prompt
    We're going to spread the elements a little bit more so that it's less busy on the right side. For example, the parchment should move down a little bit. Make sure that nothing overlaps with the text. There should be scroll parallax. As you scroll, different elements should move at different speeds.

    Accompanying referenceThe hero composition

  2. 16Creative direction
    Illustration for A rhythm for every section

    A rhythm for every section

    Conversation prompt
    Each section should be animated element by element with text animations, and we should have some scroll effects (lenis scroll).
  3. 17Creative direction
    Illustration for The edition goes live

    The edition goes live

    Conversation prompt
    publish this to renaissance.mengto.here.now
  4. 18Creative direction
    Illustration for Light, sheen, and atmosphere

    Light, sheen, and atmosphere

    Conversation prompt
    Can we make the clouds using shaders and Three.js instead? Also, can we add lighting to the 3D models, like shines and sheen, affected by a light source?

    Accompanying referenceThe live hero, with clouds and sculptural models

  5. 19Creative direction
    Illustration for An opening moment

    An opening moment

    Conversation prompt
    Let's add a loading animation, like a very minimal loading animation with the logo. And shaders and particles We don't need the placeholder images of the busts, for example, because we'll have the loader animation.

Chapter 05 / The final material study

A sense of depth

  1. 20Skill invocation
    Illustration for The surface study

    The surface study

    Conversation prompt
    $3d-depth-maps

Chapter 06 / Every idea has a beginning

The making, collected

  1. 21Creative direction
    Illustration for An archive of the process

    An archive of the process

    Conversation prompt
    So instead of the collection link at the top, can you rename it to "Prompt"? It's going to create a new page that's going to show all the prompts that we have used so far in this conversation, from the starting point to the end. Do it in the style of the story section.

The image atelier / 50 saved prompts

The art behind
the atmosphere.

The actual generation prompts saved along the way. Early explorations are preserved here too, including the cloud imagery later replaced with procedural Three.js clouds.

The original composition

01Apollo, the original bust
Image generation prompt
Create ONE isolated exquisite Renaissance marble bust as a PNG with genuine alpha transparency, portrait 1024x1536. Use the supplied reference only as art direction for the central bust; create a new full-resolution standalone asset. A handsome youthful Apollo with densely carved curly hair, head turned slightly toward viewer's left, gaze raised into distance, creamy antique ivory marble, subtly weathered detailed stone, neck and upper chest, lower torso wrapped in abundant luxurious deep aubergine purple velvet cloak fastened with an ornate round antique gold brooch on the left shoulder. A few graceful gilded laurel branches cross the bottom front. Shoulder and draped torso form a broad triangular silhouette, no plinth. Soft warm museum lighting upper left, deep rich purple creases, photorealistic cinematic sculptural detail. Entire head and drapery must fit with 5% transparent padding, bottom ends naturally as a cutout sculpture fragment. Do not include paper, clouds, spheres, stars, typography, UI, scenery or backdrop. Everything outside the sculpture and any gaps between leaves must be truly alpha transparent. No checkerboard, floor, rectangular shadow, logo, watermark. The supplied image is a composition guide, do not reproduce the webpage.
02The original cloud study
Image generation prompt
Create ONE isolated bank of dramatic sculptural cumulus clouds as a PNG with genuine alpha transparency, wide 1536x1024. Inspired by the dark blue storm clouds in the supplied Renaissance art reference. Arrange three connected billowing cloud masses in a horizontal sweeping arc, deepest midnight navy undersides, desaturated slate blue midtones and softly illuminated warm ivory silver edges. Museum-quality Renaissance oil painting meets extremely detailed photoreal volumetric cloud, richly textured and pillowy, no flat cartoon shapes. The central area is a little thinner, rounded cloud towers at left and right, wisps along bottom. Soft upper left lighting. Clouds occupy about 85 percent of canvas with generous alpha padding all around. Everything outside the clouds must be real alpha transparency including soft translucent outer wisps. No sky rectangle, scene, gold objects, stars, statue, text, UI or checkerboard.
03Floating parchment
Image generation prompt
Create ONE isolated floating antique parchment composition as a PNG with genuine alpha transparency, landscape 1536x1024. Inspired by torn paper in supplied Renaissance collage. An elegant aged ivory fibrous sheet, roughly rectangular but naturally torn deckled edges, tilted 12 degrees counterclockwise and seen in three-quarter perspective, with a curled rolled parchment tube along its lower edge angled diagonally from upper left to lower right. Its broad upper face is mostly BLANK warm ivory paper for live website lettering to be overlaid. Very faint sepia astronomical compass construction lines only near the lower right corner; otherwise no writing. A few subtle fine gold mineral veins and paper wrinkles, sculptural curled edges, fine realistic warm highlights and soft crevice shading. Object occupies 85% of canvas. Everything outside it must be genuine alpha transparency. No background, floor, rectangular shadow, text, logos, UI, statue, clouds, checkerboard.
04A fragment of a painting
Image generation prompt
Create ONE isolated antique torn fragment of a Renaissance oil painting, PNG with genuine alpha transparency, landscape 1536x1024. Inspired by the painted angel fragment in lower left of reference. A beautiful youthful curly-haired angel in flowing ivory robes seen in profile looking toward right, one partial white feathered wing sweeping toward left, against a dark desaturated Prussian blue painted sky and distant cypress foliage. Visible aged craquelure of oil paint. The entire painting is on one wide irregular ripped scrap of thick warm ivory handmade paper, deckled ragged organic silhouette, broad width and shallow height. Paint fills most of paper but some torn cream margins remain. Fragment occupies central 85 percent with 7 percent alpha padding. Entire outside the fragment is transparent. Elegant warm gallery lighting, highly detailed classical painting. No text, logos, UI, frames, checkerboard, scene backdrop.
05The Corinthian temple
Image generation prompt
Create ONE isolated tiny classical Corinthian temple architectural model as a PNG with genuine alpha transparency, portrait 1024x1536. A warm honey ivory travertine Roman temple with six slender fluted columns, ornate Corinthian capitals, richly carved triangular pediment, stepped plinth base, three quarter view seeing front and right side, antique gold patina in crevices, extraordinarily fine architectural model details, museum studio lighting from upper left. Whole isolated temple floating at a slight 7 degree diagonal, large padding 10 percent all around. Everything outside architecture including gaps between columns is real alpha transparency. No sky, floor, statue, paper, clouds, text, UI, checkerboard, shadow rectangle.

Floating details

06A gilded laurel leaf
Image generation prompt
Create ONE isolated gold laurel leaf, PNG with genuine alpha transparency, 1024x1024. A single long slender dried laurel leaf entirely made of warm antique hammered gold, sharp tip upper right, short gracefully bent stem at lower left, tilted diagonally 40 degrees, elegantly curved in three dimensions with clearly sculpted central vein and fine feathered side veins, alternating rich brown gold shadows and bright golden highlights, refined realistic museum studio lighting. Leaf takes 70 percent of canvas from lower left to upper right. Everything around it is transparent alpha. No backdrop, floor, glow, extra leaves, objects, text, logo, checkerboard.
07A fragment of marble
Image generation prompt
Create ONE isolated irregular fragment of antique ivory marble stone, PNG with genuine alpha transparency, 1024x1024. A naturally broken angular palm-sized chunk of creamy travertine marble with warm pale beige weathered rough fractured surfaces, little crevices and layered grain, delicate golden brown veins, about seven uneven facets and rough edges. A beautiful small floating fragment for a sophisticated Renaissance collage. Three-quarter view with warm light top left and gently shaded ochre undersides. Fractured natural rock NOT polished gem or low-poly geometry, extremely detailed photorealistic. Centered with 22 percent padding all around. Everything outside fragment must be genuine alpha transparent, no rectangular background, shadow, floor, text or other objects.

The identity

08The Renaissance signature
Image generation prompt
Create ONE isolated luxury Renaissance brand logo as a PNG with genuine alpha transparency. Intended for the header of an elegant ivory, antique-gold, midnight-navy and deep aubergine museum-style website. Wide horizontal canvas, approximately 1600 x 480 pixels, aspect ratio 10:3. A small exquisitely carved antique gold capital R monogram on the left, framed by a delicate open laurel wreath and an arched Renaissance architectural crest; the gold is realistic warm aged brass, not yellow plastic, with tiny fine engraved accents, restrained three-dimensional bevels and warm studio highlights. To its right, the exact word 'Renaissance' in large, beautifully drawn, highly legible dark midnight-navy classical high-contrast serif lettering. Below that word, centered, the exact words 'THE EDITION' in small, widely spaced antique-gold capitals. A refined horizontal logo lockup, clear visual hierarchy, the wordmark is more prominent than the crest. Delicate ornamentation, elegant contemporary editorial balance, NOT a busy heraldic coat of arms. Keep all letters crisp and precisely spelled. Composition occupies about 90% of width and 78% of height, with generous transparent safety padding and no clipping. Everything outside the lettering and metal ornament, including every enclosed opening in the letters and laurel, must be genuine alpha transparency. No painted checkerboard, white rectangle, solid backdrop, paper, scene, floor, drop-shadow rectangle, watermark, extra objects or any other text. The final logo must read beautifully at only 230 pixels wide.
09The ornamental button
Image generation prompt
Create ONE isolated ornamental Renaissance website button background as a PNG with genuine alpha transparency. Wide horizontal canvas, approximately 1536 x 448 pixels, aspect ratio about 3.4:1. A premium antique-gold and midnight-navy horizontal cartouche, designed for an elegant ivory-paper museum website. A long low elliptical capsule with a perfectly smooth, plain, very dark navy enamel center; the usable navy center is large, uninterrupted, and empty, spanning roughly 72% of the full artwork width and 48% of its height so a real HTML label can be placed over it. Border is fine sculpted aged brass with warm golden highlights and dark patina in tiny engraved recesses. Beautiful restrained acanthus-leaf scrolls extend from both ends, a very small symmetric palmette detail at the top center and bottom center, crisp ornamental silhouette, photorealistic antique metal craftsmanship, subtle depth seen directly front-on, no perspective skew. Sophisticated Renaissance jewelry detail rather than a chunky game UI frame. Palette: deep midnight navy #0c1829, muted antique brass, warm pale gold highlights; avoid bright yellow or orange. Composition fills 92% of canvas width and 82% of height with safety padding. The navy center is opaque. Everything outside the cartouche and all holes between the filigree must be genuinely alpha transparent. No text, lettering, symbols, logo, arrows or watermark anywhere. No painted checkerboard, background, scene, floor, rectangular shadow or external glow. Create only this one reusable button ornament, centered and complete.

A celestial footer

10Celestial
Image generation prompt
Create one exquisite panoramic celestial atlas background, intended as the bottom artwork of a Renaissance luxury editorial website. Wide 3:1 composition, approximately 2400 by 800 pixels. Full-bleed opaque very deep Prussian midnight navy, near-black at outer edges, fine antique gold cosmographic meridians forming a huge hemisphere centered horizontally; sparse tiny gold star points, two brighter pinprick starbursts to the left, subtle aged engraved texture with profound dark negative space. Graceful very thin elegant elliptical orbits sweep across the width, a few dotted orbital arcs. Upper middle and center-right must stay mostly clear to place a marble statue in front later. Rich quiet Renaissance celestial cartography, physically convincing antique gold ink, ultrafine details. No text, no letters, no statue, no planets, no clouds, no moon, no objects, no UI, no border. The bottom and side edges smoothly darken into solid #071521 navy. This is a single background painting, not a screenshot.
11Paper
Image generation prompt
Create ONE isolated horizontal torn-paper edge asset as a PNG with genuine alpha transparency. Wide 3:1 canvas, approximately 2400 by 800 pixels. A single continuous warm ivory cotton rag paper sheet enters from the entire top edge and fills the upper 55 percent. Its bottom edge is organically torn across the full width, with shallow irregular peaks, minute fibers, layers of softly raised torn paper and a few translucent fibers. The paper continues off the left, right and top canvas boundaries; only its lower edge is visible. Paper face is near solid warm ivory RGB 246,243,234 with incredibly subtle natural fibers, not heavily aged, no stains and no yellowing. The bottom 40 percent and everything beneath the torn edge must be genuinely transparent. Lighting soft daylight from upper left, microscopic self shadow confined to paper fibers. No checkerboard, solid backdrop, floor, rectangular cast shadow, writing, stars, logo, watermark or extra objects. Intended to overlap a navy celestial artwork as a seamless transition from an ivory website footer.
12Compass
Image generation prompt
Create ONE isolated elegant eight-point Renaissance compass star ornament as a PNG with genuine alpha transparency, square 1024 by 1024 composition. A finely faceted antique champagne-gold metal compass star, tall vertical spear points, moderately long horizontal spear points and four smaller diagonal points, slender refined silhouette. Four long rays meet at a small raised center. Alternating illuminated gold and deep bronze triangular facets feel like a real precisely folded and engraved precious metal ornament. Highly realistic material, warm soft studio light from upper left, subtle hairline patina, no chunky jewels or excessive scrolls. Centered with 12 percent clear transparent padding on all sides. Everything outside the star including all gaps between rays must be transparent. No circle, no backdrop, no checkerboard, no floor, no cast shadow outside the object, no glow, no letters, no logo, no watermark and no extra objects. A collectible editorial ornament for a Renaissance page, understated and impeccably crafted.

The evening signature

13The signature, after dark
Image generation prompt
Edit the supplied transparent Renaissance logo into a version for use on a very dark navy background. Preserve the exact existing logo design, wording, proportions, placement, gold arch and laurel R monogram, and the small gold words THE EDITION. The only visual change: replace the large dark navy word Renaissance with warm ivory lettering (#f7efdf), preserving its elegant serif letterforms and slight dimensional finish. Keep the monogram and small subtitle antique gold. Preserve real alpha transparency everywhere outside the logo and through all holes. Do not add a background, dark rectangle, glow, shadow panel, additional ornaments or any extra text. Keep the same wide 2.5:1 canvas and transparent padding as the original. Return a high-resolution transparent PNG of this single logo.

Our story

14Bust
Image generation prompt
Create ONE isolated photorealistic classical Apollo marble bust as a PNG with genuine alpha transparency. Portrait 4:5 composition, approximately 1200 by 1500 pixels. Museum-quality warm ivory Carrara marble, deeply carved curling hair, calm youthful male face looking three-quarter left, visible shoulders and a natural broken marble base, no colored fabric. Behind the head is a perfectly round flat disk of dark forest-green marble with delicate pale gold veining, like an inset material sample. The bust projects in front of this green circle and extends below it. Gorgeous soft warm upper-left daylight, subtle translucent marble, exquisite intricate stone texture, lifelike museum photography. Keep the complete sculpture and complete round green disk inside the canvas with 8 percent transparent padding. Everything outside these objects is true transparent alpha. No scene, no floor, no backdrop, no text, no border, no ornaments, no logo, no watermark. Standalone decorative cutout for an ivory Renaissance editorial web page.
15Collage
Image generation prompt
Create ONE isolated Renaissance paper-and-architecture collage as a PNG with genuine alpha transparency. Portrait 3:4 canvas, about 1200 by 1600 pixels. An antique ivory marble Corinthian column fragment, fluted shaft and extraordinarily intricate acanthus capital, emerges among layered irregular torn pieces of thick cream parchment with subtle old architectural pencil marks. A graceful olive branch with realistic matte olive-green leaves and a few warm gold olives rises diagonally from lower left across the column. Tall asymmetrical composition, wider at the bottom, delicate natural torn edges, warm soft sunlight, ultra-realistic macro texture of stone and paper, sophisticated editorial still life. Whole arrangement contained inside the canvas with transparent padding; everything outside each torn edge and all gaps between olive leaves must be transparent. No rectangular panel, no scene, no ground, no backdrop, no checkerboard, no text, no logo, no watermark. Keep center-right largely empty transparency so this ornament can sit along a web page's lower left edge.
16Atlas
Image generation prompt
Create ONE isolated antique circular celestial chart on aged cream parchment as a PNG with genuine alpha transparency. Square composition approximately 1200 by 1200. A complete circular Renaissance astronomical planisphere, fine delicate dark sepia orbital lines and concentric rings, subtle hand-drawn constellations and tiny stars, understated gilded compass rose near center-right, richly fibrous warm ivory parchment, beautiful natural patina and gently worn irregular circular paper edge. View straight down with no perspective tilt. Museum-quality high resolution scanned antique object, sophisticated restrained details, not cartoon. Full circle centered with 8 percent clear transparent padding. Outside the circular paper object must be truly transparent. No rectangular background, no drop shadow, no checkerboard, no readable letters, no numbers, no logo, no watermark.
17Idea
Image generation prompt
A square full-bleed editorial image of an old Renaissance architectural study of the Florence cathedral dome drawn in exceptionally fine sepia graphite and ink on warm ivory parchment. Close-up detail of Brunelleschi's dome with compass construction lines, faint proportional guides, old paper fibers and softened creases. Warm beige, subtle gold, cocoa ink. Elegant museum archive realism, beautiful natural material detail, flat paper viewed from above. No typography, labels, readable handwriting, border, frame, watermark or UI. Approximately 1024 by 1024 pixels.
18Craft
Image generation prompt
A square full-bleed ultra-realistic editorial photograph, close-up of a potter's two clay-covered hands shaping the lip of a small ribbed ceramic bowl on a wheel. Only adult hands, earthen clay vessel and blurred dark warm studio background. Warm directional sunlight from the left, beautiful skin texture, damp clay ridges, contemplative artisanal atmosphere, brown, bronze, warm ivory palette. Tightly composed compelling artisanal photograph, no face, no text, no watermark, no border, no UI. Approximately 1024 by 1024 pixels.
19Community
Image generation prompt
A square full-bleed ultra-realistic architectural photograph looking through a tall Renaissance limestone archway onto a serene Tuscan landscape. Sunlit honey-colored old stone arch curves across the upper left and top, warm stone floor in foreground, slender cypress trees, distant rolling hills and pale blue afternoon sky beyond. Elegant quiet composition, authentic weathered textures, soft golden light, editorial travel photography. No people, no text, no watermark, no border, no UI. Approximately 1024 by 1024 pixels.
20Edition
Image generation prompt
A square full-bleed ultra-realistic editorial photograph of an ornate antique Corinthian column capital at the upper right, fluted cream marble shaft descending down the right edge, a delicate olive branch crossing the lower left and center against a muted pale blue sky. Intricate acanthus carvings, warm afternoon side lighting, fine weathering, antique gold details, quiet refined Renaissance Mediterranean mood. Close-up upward view, sophisticated architectural photography, no people, no text, no border, no watermark, no UI. Approximately 1024 by 1024 pixels.

The collection

21Astrolabe
Image generation prompt
Create one premium museum editorial photograph in portrait 7:8 aspect ratio, approximately 1536 x 1792. A large ornate 16th-century brass celestial astrolabe with dark bronze patina, finely engraved concentric astronomical rings and a long diagonal alidade, upright on a pale weathered limestone block. Nearly fills the frame with comfortable padding around the top hanging ring and complete bottom feet. Background: softly focused warm cream antique parchment with handwritten notes and faint astronomical compass diagrams. Soft warm daylight from upper left, photorealistic fine metal detail, elegant old-world Renaissance collector aesthetic, warm ivory and aged gold palette. Full bleed rectangular photograph, no UI, no headings, no watermark. Single astrolabe only.
22Iris
Image generation prompt
Create one Renaissance botanical illustration as a full bleed rectangular portrait image, 7:8 aspect ratio approximately 1536 x 1792. A single tall branching Florentine iris with three rich violet purple flowers, slender olive green stems and leaves mixed with antique gold leaves, delicately hand painted with botanical accuracy on aged cream parchment. The full plant fits inside the frame with generous thin margins. Parchment has softly worn darkened edges, subtle creases and small sepia scientific sketches, fine astronomical compass circle at upper right, tiny handwritten botanical notes at left, title Tab. XXIII at upper left and delicate italic label Iris Florentina near bottom right. Museum quality historical botanical folio, highly detailed petals and gold leaf accents, natural paper texture, sophisticated muted Renaissance palette. This is standalone artwork, no UI, no mockup, no outer frame or watermark.
23Vessel
Image generation prompt
Create one ultra realistic museum object editorial photograph in portrait 7:8 aspect ratio approximately 1536 x 1792. Center a complete ornate antique ivory alabaster urn, handleless, with wide lip, curved shoulder and tapering bowl on an elegant foot. Deeply carved high-relief fully clothed adult classical figures in long flowing robes and winding grape vines cover its surface, with a leaf frieze at the neck. Translucent warm white stone with tiny caramel veins and beautiful fine chisel detail. Urn sits on a small pale marble plinth, rich deep aubergine purple velvet drapes behind and beneath it. Complete urn and foot visible with 6% breathing space, pedestal partially visible at bottom. Dramatic soft museum side lighting, tactile luxurious materials, elegant restrained composition, photorealistic object. Full bleed rectangle, no text, no UI, no watermark.
24Heavens
Image generation prompt
Create one standalone Renaissance celestial chart poster in portrait 7:8 aspect ratio, approximately 1536 x 1792. Deep midnight navy textured paper with very fine antique gold engraved astronomical concentric orbits, stars and connecting celestial lines. A beautiful small golden sun with a serene engraved human face sits at the exact center; rings radiate out nearly to the edges. Four exquisite golden fully clothed adult winged allegorical figures in long flowing robes inhabit the four corners inside an intricate thin rectangular gilt engraved border. Small Roman serif heading COELVM centered at top, SEMPER ALTIVS centered near bottom. Original Renaissance cartographic engraving aesthetic, refined densely detailed gold linework, navy and pale aged gold only, strictly flat frontal artwork with no perspective. Entire outer frame visible with minimal padding. Full bleed rectangular fine art image, no website UI, no watermark.

Sculptures for the footer

25A carved alabaster vase
Image generation prompt
Edit the supplied reference into ONE isolated museum-quality alabaster vase for image-to-3D reconstruction. Preserve the exact warm ivory vase, its proportions, ornate wide rim, relief carvings of fully clothed adult figures in long robes, grape vines, fluted lower bowl, elegant stem and circular foot. Remove all velvet drapery, the background, and the separate square display plinth. Show the entire vase from slightly above, only enough to show a real shallow hollow opening inside the rim. Keep the same near-frontal view and soft neutral studio illumination that reveals geometry without harsh baked shadows. The vase must be a freestanding three-dimensional object with a complete circular base. Portrait composition, centered, 8% clear padding on every side. Genuine alpha transparent PNG, everything outside the object transparent, no floor or rectangular shadow, no text. Ultra-realistic finely carved stone, preserve the detailed material and silhouette of the reference.
26The Corinthian column
Image generation prompt
Using the supplied collage reference, create ONE isolated freestanding antique Corinthian column for image-to-3D reconstruction. Preserve the warm ivory weathered marble, exceptionally ornate acanthus leaves and scrolls of the capital, the small central carved flower, and the deeply fluted shaft. Remove all paper fragments, drawings, olive branches, olives, leaves and surrounding collage. Complete the column as a coherent three-dimensional stone object: the same ornate capital above a moderately tall fluted shaft and a simple round moulded marble base. The entire column including base must fit inside the image. Overall height about 3.1 times the capital width, substantial sculptural proportions so the carved capital is prominent. Near frontal three-quarter view from just above the capital, neutral soft studio lighting, no harsh baked shadows. One separate isolated column, portrait composition, 8% padding all sides. Genuine alpha transparent PNG with transparent background and openings, no floor, no backdrop, no text or watermark. Ultra-realistic finely carved warm marble.

Illustrating the prompt archive

27First vision
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A small classical Apollo bust of ivory marble with a deep aubergine drape, one antique navy and gold celestial sphere and two floating sheets of parchment arranged at different depths. A poetic miniature universe of Renaissance objects.
28Scene presence
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: An antique brass armillary sphere with a small ivory Apollo bust at its center, several thin gold orbit rings tilted around it, a single laurel leaf floating in front. The different orbits suggest movement around an object.
29Dimensional clouds
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Three beautiful billowing sculptural cumulus cloud masses rising at different depths around a small antique gold sun disc. Rounded ivory tops, deep desaturated navy undersides, dramatic believable volumetric light.
30Procedural clouds
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A billowing ivory cloud taking form from a delicate field of tiny gold particles, dense soft cloud on the left dissolving into ordered points on the right. A poetic physical study of procedural atmosphere.
31Detail toolkit
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A curated small still life of a carved marble fragment, one detailed hammered-gold laurel leaf, a brass magnifying glass and a tiny clear crystal prism catching a thin sunbeam. Exquisite tactile materials.
32Renaissance signature
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: An elaborate antique gold laurel crest with a blank oval ivory center, resting above an empty horizontal dark navy ornamental cartouche edged in carved gold. A refined study of identity and ornament, no letters anywhere.
33Ornamental ending
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: An ornate golden compass star above a folded strip of thick ivory paper, backed by a curved midnight-blue celestial map sprinkled with tiny gold stars. A graceful composition that suggests an elegant page ending.
34Negative space
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: One fine horizontal gold rule supported between two tiny ivory stone fragments, floating over an expansive warm ivory blank field. A delicate small eight-point gold star interrupts the line. A refined still life about empty space.
35Unity
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A dark navy velvet architectural plinth bearing an ivory-and-gold laurel medallion, with three small blank parchment tabs aligned beneath it and fine gold constellation lines behind. A composition about bringing identity together.
36Three columns
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Exactly three slender ivory Corinthian columns of equal height, evenly spaced on a low thin marble base. Elegant acanthus capitals, gentle warm daylight, small soft contact shadows, a beautifully balanced architectural rhythm.
37Continuous canvas
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Two irregular torn scraps of antique cream paper reconnecting seamlessly into one flowing composition, a fragment of a painted ivory angel wing crossing their join. Delicate gold astronomical construction lines connect across both sheets.
38Telling the story
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A curved gold timeline thread connecting three ivory medallions: a small Renaissance dome sketch, a potter's clay bowl, and an olive sprig. The ornaments hover gently over warm cream paper, a visual story across time.
39Continues
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: An open antique ivory sketchbook with blank softly textured pages, a golden quill poised over the next page and a single olive leaf marking the fold. An intimate poetic still life about continuing a story.
40Curated collection
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Four museum objects arranged in an immaculate two-by-two still-life grid: a bronze astrolabe, a small ivory vase, a miniature marble bust, and a celestial chart on parchment. Each clearly separated, subtle soft shadows, refined gallery display.
41New sculptures
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: An exquisitely carved ivory alabaster vase decorated with classical figures and acanthus leaves beside a tall fluted Corinthian column. A soft deep aubergine cloth curls around their bases; ornate photoreal museum objects.
42Space and scroll
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Three floating antique parchment leaves staggered vertically at different depths, a gold sphere at the highest level and a small marble fragment near the lowest. Gentle diagonal rhythm and generous gaps, a physical metaphor for scroll parallax.
43Section rhythm
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Five small golden eight-point compass stars becoming progressively brighter along a graceful curved brass thread, with fine ivory paper ribbons fluttering at different intervals. An elegant visual rhythm, no letters or numbers.
44Edition live
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A small polished midnight-blue globe with finely engraved golden meridians floating above a folded ivory map. A luminous warm gold point on the globe sends out two delicate orbit arcs. A poetic representation of publishing to the world.
45Light and sheen
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A close still life of a small ivory marble bust, a polished antique gold sphere and folded deep aubergine velvet under one soft directional sunbeam. Show distinct physically plausible stone highlights, metal reflections and velvet sheen.
46Opening moment
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A small ornate gold laurel medallion with a blank center suspended inside a thin incomplete gold circular ring, with a sparse scattering of tiny warm golden particles. Restrained, quiet, airy loading-animation metaphor.
47Surface depth
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: Three aligned samples of the same ivory curled parchment floating slightly apart: a realistic fibrous top sheet, a softly embossed pale relief layer, and a slate-blue sculpted layer beneath. Clearly communicate shallow layered surface depth without text or diagram labels.
48Material study
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A small ivory stone relief with a carved acanthus leaf resting beside the same motif pressed into warm parchment, plus one thin polished gold leaf. Soft grazing light makes every subtle ridge tactile and legible.
49Final polish
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A gloved artisan's hand holding a soft small brush just beside a pristine carved ivory marble fragment, a gold compass star nearby, subtle dust motes caught in warm sunlight. A careful finishing moment, no face, no tools with lettering.
50Prompt archive
Image generation prompt
Use case: stylized-concept. Create ONE standalone editorial illustration for a card in the Renaissance Edition prompt archive. Landscape 3:2 composition, about 1536 by 1024 pixels. Photorealistic Renaissance museum still life mixed with exquisite antique paper collage. Warm ivory, aged gold, restrained midnight navy and aubergine palette; rich natural material detail, soft upper-left daylight, calm art-directed composition with generous breathing room. Full-bleed warm ivory paper backdrop, no transparency needed. Keep every important object fully inside the frame, with at least 10 percent padding. No text, letters, numbers, typography, watermark, logos, web UI, borders, multiple panels or collage grid unless the subject explicitly requires an object arrangement. Subject: A beautiful small archive of blank cream handwritten-style scrolls with no actual writing, bound in a loose dark plum ribbon, an antique brass key and a small olive branch. One unfolded blank sheet faces the viewer, inviting the next idea.

From image to object

Four sculptures. A shared world.

The Apollo bust, temple, vase, and column were reconstructed from reference images with Higgsfield. The vase and column reference-image prompts are included above. Those image-to-3D jobs used image inputs and geometry settings, rather than additional written prompts.

The requested image workflow was GPT Image 2.5 through Codex. The built-in image tool did not expose the actual selected model. Surface depth maps were authored procedurally; no additional image-generation prompt was used for them.

From the first word to the final detail

A classic worth
making.

Explore the edition