Curated Formatv1.0.0

Moody Pink Effect

Give one nighttime photo a luxury editorial grade with vibrant pink and magenta atmosphere while preserving every recognizable person, object, and scene detail.

By Wiggly Studio · Updated July 2026

Nightlife transformation: Turn nightlife into a luxury pink editorial

Shared recipe family

One family. 31 recipes.

Moody Pink Effect belongs to Image Filters. These recipes share a runtime; adjacent examples are not separate Repos. The download on this page packages this specific recipe.

See the full recipe family

Before you start

Services & costs

Replicate

google/nano-banana-2-lite · google/nano-banana-2 · google/nano-banana-pro

Generate the approved media in this recipe.

REPLICATE_API_TOKEN

Local runtime

Setup, validation & inspection

Node.js >=22 · npm

Typical run estimate

About $0.067 on the default route and usually 2-4 min

Estimates describe the saved recipe, not a price guarantee. Confirm current provider pricing and approve any spend before generation. Your coding agent may have its own fees or usage limits. Never paste API keys into chat.

Setup notes from requirements.json
  • All smoke and validation commands are local.
  • The source guide names Nano Banana Pro; Wiggly's runnable lanes use Nano Banana 2 Lite, Nano Banana 2, and Nano Banana Pro.
  • No Replicate proof call was made for this package.
  • One render attempt is one paid prediction.
  • Paid generation requires explicit approval and is capped at three attempts.

Included assets

The ingredients behind the format.

The published package includes its agent instructions, input contract, and quality rules, plus 7 viewable asset references below. Reference media teaches the recipe; it is not a new result for your input.

Creator style reference

Creator style reference

Every published native image already contains exactly one original-photo inset, so Discover adds no second reference overlay. The final two CTA slides are intentionally excluded.

Local smoke-test input

Local smoke-test input

Every published native image already contains exactly one original-photo inset, so Discover adds no second reference overlay. The final two CTA slides are intentionally excluded.

Recipe reference

Recipe reference

Supplied creator reference—not a new Wiggly-generated result.

Recipe reference

Recipe reference

Supplied creator reference—not a new Wiggly-generated result.

Recipe reference

Recipe reference

Supplied creator reference—not a new Wiggly-generated result.

Recipe reference

Recipe reference

Supplied creator reference—not a new Wiggly-generated result.

View all 7 asset references
Recipe reference

Recipe reference

Supplied creator reference—not a new Wiggly-generated result.

What stays consistent

  • Faces, facial features, expressions, and realistic skin tones
  • Clothing, vehicles, objects, and other scene details
  • The original composition, crop, perspective, and subject placement
  • A recognizable photographic finish

What you bring

  • One 3:4 JPEG, PNG, or WebP nighttime photo at least 512px on both axes
  • A Replicate API token only when generation is approved
Read the included contracts and asset inventory ↓

Examples

Examples & references.

6 saved examples for this recipe—not 6 separate Repos. Each example keeps its original version and provenance.

Nightlife transformation: Turn nightlife into a luxury pink editorial

Example 01 · Nightlife transformation

Turn nightlife into a luxury pink editorial

Open finished ad
SKAI source example: Keep every spontaneous reaction readable

Example 02 · SKAI source example

Keep every spontaneous reaction readable

Open finished ad
SKAI source example: Carry pink light through a crowded frame

Example 03 · SKAI source example

Carry pink light through a crowded frame

Open finished ad
SKAI source example: Make a quiet portrait deliberately cinematic

Example 04 · SKAI source example

Make a quiet portrait deliberately cinematic

Open finished ad
SKAI source example: Preserve every face in a candid group photo

Example 05 · SKAI source example

Preserve every face in a candid group photo

Open finished ad
SKAI source example: Move the same palette into open air

Example 06 · SKAI source example

Move the same palette into open air

Open finished ad

From input to output

How the run works.

From the published pipeline.json. The agent follows the packaged runtime and its approval gates.

  1. Step 01

    Prepare

    One run pinned to the source image, exact gathered prompt, and selected model route.

  2. Step 02

    Validate

    The 3:4 nighttime photo and prompt contract checked locally.

  3. Step 03 · approval · provider

    Transform

    One luxury moody-pink editorial image from one approved prediction.

  4. Step 04 · approval

    Inspect

    Automatic file checks plus an actual visual review.

Proof & quality

What a good result looks like.

Judge identity and scene preservation, realistic skin tones, integrated pink and magenta lighting, cinematic depth, and a polished luxury editorial finish.

The delivered Google Doc supplied the exact Nano Banana Pro prompt. The Instagram carousel supplied one native 3:4 title cover and five native 3:4 transformation examples.

Every published native image already contains exactly one original-photo inset, so Discover adds no second reference overlay. The final two CTA slides are intentionally excluded.

Saved reference

Explain the moody-pink grade in one glance

  • The title, finished city portrait, and single original-photo inset explain the transformation immediately
  • The subject, clothing, street, and night composition stay recognizable
  • Pink and magenta light feels cinematic without flattening the image

Saved reference

Keep a spontaneous group reaction readable

  • All three faces, gestures, drinks, and bar details survive the grade
  • Realistic skin texture remains visible inside saturated ambient light
  • Reflections and glowing bulbs make the treatment feel motivated by the venue

Quality gates

These are the acceptance criteria in quality.json—not a claim that every pictured example passed the current version. Inspect each new output before finalizing.

Automatic · 5 checks
  • The source input is 3:4 within 0.02 so composition can be preserved
  • Exactly 1 decodable JPG, JPEG, PNG, or WebP output
  • At least 640x800 pixels
  • Aspect ratio matches the selected route within 0.02
  • At least 50 KB
Visual · 5 checks
  • Faces, realistic skin tones, clothing, vehicles, objects, composition, crop, and perspective remain recognizable
  • Pink and magenta ambient lighting feels motivated by the nighttime scene rather than pasted over it
  • Cinematic glow, rich shadows, soft contrast, reflections, and atmospheric depth create a polished luxury editorial
  • Highlights retain detail and the pink treatment does not flatten the entire image
  • There are no malformed hands, limbs, facial features, or obviously synthetic background details
Finalization · 4 checks
  • Automatic Pass Required: true
  • Visual Pass Required: true
  • Review Notes Required: true
  • Explicit Approval Flag: --approve-final

Open the package

Readable Repo files.

Actual files from the published v1.0.0 package. Expand any file to inspect the instructions, requirements, or evidence before sending the Repo to your agent.

README.md
Open raw file ↗
# Wiggly Moody Pink Effect Format

This runnable Repo preserves the exact prompt delivered by @skaigenerated and
six native carousel images. Every published image already includes one
original-photo inset, so Wiggly does not add another. The final two CTA slides
are intentionally excluded.

Run from `v3`:

```bash
npm install
npm run format:skai-image -- check --format=moody-pink-effect
npm run format:skai-image -- smoke --format=moody-pink-effect
npm run format:skai-image -- init --format=moody-pink-effect --run=my-moody-pink --input=/absolute/path/to/3-by-4-image.jpg
npm run format:skai-image -- validate --format=moody-pink-effect --run=my-moody-pink
npm run format:skai-image -- estimate --format=moody-pink-effect --run=my-moody-pink
```

The input must already be 3:4 so the fixed output route can preserve the source
framing. Add `--model=nano-banana-2-lite` or `--model=nano-banana-pro` to
`init` to select the economy or premium route.

Generation requires `REPLICATE_API_TOKEN`. Stop after `estimate` and get the
user's explicit approval before supplying the paid flag:

```bash
npm run format:skai-image -- render --format=moody-pink-effect --run=my-moody-pink --approve-paid
```

No Replicate proof call was made while packaging this Repo.

- Economy: `google/nano-banana-2-lite`
- Default: `google/nano-banana-2`
- Premium: `google/nano-banana-pro`
- Model named in the source guide: `google/nano-banana-pro`

The source model is recorded for provenance. The default route uses the
lower-cost Nano Banana 2 while preserving the carousel's 3:4 output shape.
The estimate is a packaged planning value, so verify Replicate's current rate
immediately before paid approval.
SKILL.md
Open raw file ↗
---
name: wiggly-moody-pink-effect
description: Give one 3:4 nighttime photo a luxury moody-pink editorial grade using the exact gathered SKAI prompt.
---

# Moody Pink Effect

Use the packaged runner and exact prompt. Do not call Replicate separately or
create another render path.

From the extracted kit's `v3` directory, prepare the local runner first:

```bash
npm install
npm run format:skai-image -- check --format=moody-pink-effect
npm run format:skai-image -- smoke --format=moody-pink-effect
```

Ask one short question:

> Which 3:4 nighttime photo should I turn into a moody pink editorial, and should I use Nano Banana 2 (default), Lite (economy), or Pro (source model)?

Then initialize the free run. Omit `--model` for Nano Banana 2, or add
`--model=nano-banana-2-lite` for economy or `--model=nano-banana-pro` for
premium:

```bash
npm run format:skai-image -- init --format=moody-pink-effect --run=<id> --input=<absolute-image-path> [--model=<route>]
npm run format:skai-image -- validate --format=moody-pink-effect --run=<id>
npm run format:skai-image -- estimate --format=moody-pink-effect --run=<id>
```

Stop after `estimate` and ask the user to approve the paid prediction. Only
after explicit approval should you supply `--approve-paid`:

```bash
npm run format:skai-image -- render --format=moody-pink-effect --run=<id> --approve-paid
npm run format:skai-image -- inspect --format=moody-pink-effect --run=<id>
npm run format:skai-image -- inspect --format=moody-pink-effect --run=<id> --visual-pass --review-notes="<specific observations>"
npm run format:skai-image -- finalize --format=moody-pink-effect --run=<id> --approve-final
```

Hard rules:

- Preserve faces, skin tones, clothing, vehicles, objects, composition, and perspective.
- Add vibrant pink and magenta ambient light, cinematic glow, rich shadows, soft contrast, subtle reflections, and atmospheric depth.
- Keep realistic skin color inside the stylized lighting.
- Produce a polished luxury nighttime editorial, not a flat global color wash.
- Use a user-approved 3:4 input before validation.
- Keep the exact gathered prompt unless the user explicitly requests a change.
- Use Nano Banana 2 by default, Lite for economy, or Pro for premium.
- Validate and estimate before spending, pause for explicit user approval, and never render without `--approve-paid`.
- Persist and resume the prediction id.
- Never exceed three attempts.
- View the output and record specific visual-review notes before finalizing.
- Never print, store, or commit `REPLICATE_API_TOKEN`.
requirements.json
Open raw file ↗
{
  "runtime": {
    "node": ">=22",
    "commands": ["npm"]
  },
  "providers": [
    {
      "name": "Replicate",
      "models": [
        "google/nano-banana-2-lite",
        "google/nano-banana-2",
        "google/nano-banana-pro"
      ]
    }
  ],
  "environment": [
    {
      "name": "REPLICATE_API_TOKEN",
      "secret": true,
      "requiredFor": ["render", "resume"]
    }
  ],
  "notes": [
    "All smoke and validation commands are local.",
    "The source guide names Nano Banana Pro; Wiggly's runnable lanes use Nano Banana 2 Lite, Nano Banana 2, and Nano Banana Pro.",
    "No Replicate proof call was made for this package.",
    "One render attempt is one paid prediction.",
    "Paid generation requires explicit approval and is capped at three attempts."
  ]
}
inputs.json
Open raw file ↗
{
  "required": [
    {
      "id": "image",
      "type": "image",
      "formats": ["jpg", "png", "webp"],
      "minimumWidth": 512,
      "minimumHeight": 512,
      "maximumBytes": 26214400,
      "aspectRatio": "3:4",
      "aspectRatioTolerance": 0.02
    }
  ],
  "question": "Which 3:4 nighttime photo should I turn into a moody pink editorial, and should I use Nano Banana 2 (default), Lite (economy), or Pro (source model)?",
  "defaults": {
    "model": "nano-banana-2",
    "aspectRatio": "3:4",
    "outputCount": 1
  },
  "modelRoutes": {
    "economy": "google/nano-banana-2-lite",
    "default": "google/nano-banana-2",
    "premium": "google/nano-banana-pro"
  },
  "sourceModel": "google/nano-banana-pro"
}
pipeline.json
Open raw file ↗
{
  "progress": "Prepare -> Validate -> Transform -> Inspect",
  "attemptCap": 3,
  "stages": [
    {
      "id": "prepare",
      "output": "One run pinned to the source image, exact gathered prompt, and selected model route.",
      "paid": false,
      "approvalRequired": false
    },
    {
      "id": "validate",
      "output": "The 3:4 nighttime photo and prompt contract checked locally.",
      "paid": false,
      "approvalRequired": false
    },
    {
      "id": "transform",
      "output": "One luxury moody-pink editorial image from one approved prediction.",
      "paid": true,
      "approvalRequired": true
    },
    {
      "id": "inspect",
      "output": "Automatic file checks plus an actual visual review.",
      "paid": false,
      "approvalRequired": true
    }
  ]
}
assets.json
Open raw file ↗
{
  "sourceReference": {
    "creator": "@skaigenerated",
    "postUrl": "https://www.instagram.com/skaigenerated/p/Da0HxPuCsSf/",
    "resourceUrl": "https://docs.google.com/document/d/1hmH478kxRmAkv2-nTj3_6bBFGX-WZpwIrly3Ps-Iapo/mobilebasic",
    "guide": "assets/source/guide.txt",
    "nativeHero": "assets/source/skai-hero.jpg",
    "smokeInput": "assets/source/reference-input.jpg",
    "verification": "The delivered Google Doc supplied the exact Nano Banana Pro prompt. The Instagram carousel supplied one native 3:4 title cover and five native 3:4 transformation examples.",
    "referenceNote": "Every published native image already contains exactly one original-photo inset, so Discover adds no second reference overlay. The final two CTA slides are intentionally excluded."
  },
  "examples": [
    { "id": "native-hero", "path": "assets/source/skai-hero.jpg", "provenance": "@skaigenerated carousel title cover" },
    { "id": "bar-reaction", "path": "assets/source/skai-example-01.jpg", "provenance": "@skaigenerated carousel" },
    { "id": "late-night-drinks", "path": "assets/source/skai-example-02.jpg", "provenance": "@skaigenerated carousel" },
    { "id": "quiet-booth", "path": "assets/source/skai-example-03.jpg", "provenance": "@skaigenerated carousel" },
    { "id": "group-snapshot", "path": "assets/source/skai-example-04.jpg", "provenance": "@skaigenerated carousel" },
    { "id": "pink-shoreline", "path": "assets/source/skai-example-05.jpg", "provenance": "@skaigenerated carousel" }
  ]
}
quality.json
Open raw file ↗
{
  "automatic": [
    "The source input is 3:4 within 0.02 so composition can be preserved",
    "Exactly 1 decodable JPG, JPEG, PNG, or WebP output",
    "At least 640x800 pixels",
    "Aspect ratio matches the selected route within 0.02",
    "At least 50 KB"
  ],
  "visual": [
    "Faces, realistic skin tones, clothing, vehicles, objects, composition, crop, and perspective remain recognizable",
    "Pink and magenta ambient lighting feels motivated by the nighttime scene rather than pasted over it",
    "Cinematic glow, rich shadows, soft contrast, reflections, and atmospheric depth create a polished luxury editorial",
    "Highlights retain detail and the pink treatment does not flatten the entire image",
    "There are no malformed hands, limbs, facial features, or obviously synthetic background details"
  ],
  "finalization": {
    "automaticPassRequired": true,
    "visualPassRequired": true,
    "reviewNotesRequired": true,
    "explicitApprovalFlag": "--approve-final"
  }
}
goldens.json
Open raw file ↗
{
  "purpose": "Judge identity and scene preservation, realistic skin tones, integrated pink and magenta lighting, cinematic depth, and a polished luxury editorial finish.",
  "examples": [
    {
      "id": "native-hero",
      "title": "Explain the moody-pink grade in one glance",
      "imagePath": "assets/source/skai-hero.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "The title, finished city portrait, and single original-photo inset explain the transformation immediately",
        "The subject, clothing, street, and night composition stay recognizable",
        "Pink and magenta light feels cinematic without flattening the image"
      ]
    },
    {
      "id": "bar-reaction",
      "title": "Keep a spontaneous group reaction readable",
      "imagePath": "assets/source/skai-example-01.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "All three faces, gestures, drinks, and bar details survive the grade",
        "Realistic skin texture remains visible inside saturated ambient light",
        "Reflections and glowing bulbs make the treatment feel motivated by the venue"
      ]
    },
    {
      "id": "late-night-drinks",
      "title": "Carry pink light across a busy nightlife frame",
      "imagePath": "assets/source/skai-example-02.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "People, poses, glassware, clothing, and the crowded bar stay intact",
        "Rich shadows preserve separation between overlapping subjects",
        "The grade reads as a premium editorial instead of a simple color overlay"
      ]
    },
    {
      "id": "quiet-booth",
      "title": "Make a quiet portrait feel deliberately cinematic",
      "imagePath": "assets/source/skai-example-03.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "The face, hand, cigarette, clothing, booth, and wall remain recognizable",
        "The practical wall light supports the new magenta atmosphere",
        "Soft contrast and deep blacks preserve a restrained editorial mood"
      ]
    },
    {
      "id": "group-snapshot",
      "title": "Preserve every face in a candid group photo",
      "imagePath": "assets/source/skai-example-04.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "The source inset confirms the people, expressions, and composition stay recognizable",
        "Pink light unifies the frame without erasing facial detail",
        "The background remains photographic and spatially coherent"
      ]
    },
    {
      "id": "pink-shoreline",
      "title": "Move the same palette into an open landscape",
      "imagePath": "assets/source/skai-example-05.jpg",
      "model": "Nano Banana Pro · SKAI source",
      "whyItWorks": [
        "Both people, clothing, shoreline, water, and horizon retain their structure",
        "Atmospheric depth keeps the pink dusk from feeling flat",
        "The treatment proves the recipe can work beyond nightlife interiors"
      ]
    }
  ]
}
format.json
Open raw file ↗
{
  "id": "moody-pink-effect",
  "version": "1.0.0",
  "title": "Moody Pink Effect",
  "description": "Give one nighttime photo a luxury editorial grade with vibrant pink and magenta light while preserving every recognizable subject and scene detail.",
  "status": "agent-ready",
  "owner": "Wiggly Studio",
  "source": {
    "creator": "@skaigenerated",
    "postUrl": "https://www.instagram.com/skaigenerated/p/Da0HxPuCsSf/",
    "resourceUrl": "https://docs.google.com/document/d/1hmH478kxRmAkv2-nTj3_6bBFGX-WZpwIrly3Ps-Iapo/mobilebasic",
    "ctaKeyword": "AI",
    "modelShown": "Nano Banana Pro"
  },
  "outputs": [
    "1 inspected 3:4 luxury moody-pink editorial image",
    "state.json with model and prediction provenance",
    "quality-report.json with automatic and visual inspection"
  ]
}
kit.package.json
Open raw file ↗
{
  "name": "wiggly-moody-pink-effect-format-kit",
  "private": true,
  "version": "1.0.0",
  "type": "module",
  "engines": {
    "node": ">=22"
  },
  "scripts": {
    "check:kit": "node kit-smoke.mjs",
    "format:skai-image": "tsx scripts/skai-image-format.ts",
    "test": "tsx tests/skai-image-format-runner.test.ts --format=moody-pink-effect && node kit-smoke.mjs"
  },
  "dependencies": {
    "image-size": "2.0.2",
    "replicate": "1.4.0",
    "tsx": "4.20.6"
  }
}
runtime.json
Open raw file ↗
{
  "slug": "moody-pink-effect",
  "version": "1.0.0",
  "promptPath": "prompts/transform.txt",
  "input": {
    "mode": "image",
    "formats": ["jpg", "png", "webp"],
    "minimumWidth": 512,
    "minimumHeight": 512,
    "maximumBytes": 26214400,
    "aspectRatio": "3:4",
    "aspectRatioTolerance": 0.02
  },
  "defaultModel": "nano-banana-2",
  "modelRoutes": {
    "nano-banana-2-lite": {
      "label": "Nano Banana 2 Lite",
      "lane": "economy",
      "model": "google/nano-banana-2-lite",
      "family": "nano-banana",
      "aspectRatio": "3:4",
      "outputFormat": "jpg",
      "costEstimate": "about $0.034 per output image at the current listed rate",
      "timeEstimate": "usually 5-60 seconds"
    },
    "nano-banana-2": {
      "label": "Nano Banana 2",
      "lane": "default",
      "model": "google/nano-banana-2",
      "family": "nano-banana",
      "aspectRatio": "3:4",
      "outputFormat": "jpg",
      "resolution": "1K",
      "costEstimate": "about $0.067 per 1K output image at the current listed rate",
      "timeEstimate": "usually 10-120 seconds"
    },
    "nano-banana-pro": {
      "label": "Nano Banana Pro",
      "lane": "premium",
      "model": "google/nano-banana-pro",
      "family": "nano-banana",
      "aspectRatio": "3:4",
      "outputFormat": "jpg",
      "resolution": "1K",
      "costEstimate": "about $0.15 per 1K output image at the current listed rate",
      "timeEstimate": "usually 30-180 seconds"
    }
  },
  "expectedOutputs": 1,
  "maximumAttempts": 3,
  "smokeInputPath": "assets/source/reference-input.jpg",
  "smokeExamplePath": "assets/source/skai-example-01.jpg",
  "minimumOutputWidth": 640,
  "minimumOutputHeight": 800,
  "minimumOutputBytes": 51200,
  "manualReview": [
    "recognizable faces, realistic skin tones, clothing, vehicles, objects, composition, crop, and perspective",
    "vibrant pink and magenta ambient lighting integrated with the existing nighttime scene",
    "cinematic glow, rich shadows, soft contrast, subtle reflections, atmospheric depth, and polished light",
    "a luxury high-fashion editorial finish without a flat global pink wash",
    "no clipped highlights, malformed anatomy, or synthetic background changes"
  ]
}
Technical proof archive ↗

Run it with a coding agent

Know the run before you start.

The agent reads this version’s instructions, checks the requirements, and walks you through the approved workflow. Review the inputs and estimate before starting.

Typical run

Prepare + validateFree · under 1 min
One image transformAbout $0.067 on the default 1K route · usually under 2 min
Inspect + finalizeFree · about 1 min

About $0.067 on the default route and usually 2-4 min

You provide

One 3:4 JPEG, PNG, or WebP nighttime photo at least 512px on both axes · A Replicate API token only when generation is approved

Output

One inspected 3:4 moody-pink editorial image plus prediction and quality provenance