← back to Wallco Ai
cherry-blossom-animals: prompt library mirroring wisteria — hanami-style canopy, animals face UP, public-domain ukiyo-e motif
9e4293da9ae66e7d2bdce38a48c66904d899f564 · 2026-05-13 12:06:05 -0700 · SteveStudio2
Files touched
A scripts/cherry_blossom_animal_prompts.js
Diff
commit 9e4293da9ae66e7d2bdce38a48c66904d899f564
Author: SteveStudio2 <stevestudio2@SteveStacStudio.lan>
Date: Wed May 13 12:06:05 2026 -0700
cherry-blossom-animals: prompt library mirroring wisteria — hanami-style canopy, animals face UP, public-domain ukiyo-e motif
---
scripts/cherry_blossom_animal_prompts.js | 191 +++++++++++++++++++++++++++++++
1 file changed, 191 insertions(+)
diff --git a/scripts/cherry_blossom_animal_prompts.js b/scripts/cherry_blossom_animal_prompts.js
new file mode 100644
index 0000000..8ee92ec
--- /dev/null
+++ b/scripts/cherry_blossom_animal_prompts.js
@@ -0,0 +1,191 @@
+#!/usr/bin/env node
+/**
+ * Cherry-blossom + drunk/stoned animals prompt library — drinking animals
+ * perched on horizontal flowering cherry branches, gazing UP through a canopy
+ * of falling petals. Inherits the same butterfly-trellis / wisteria heritage
+ * botanical aesthetic (refined, no Warhol neon).
+ *
+ * SAME RULES AS WISTERIA — flowers-only, no leaves, no foliage. Cherry-blossom
+ * tradition (Japanese ukiyo-e, hanami) is itself a flowers-only motif so this
+ * is a natural fit rather than a constraint dodge. Public-domain Japanese
+ * iconography — no Hinson/Schumacher trademark exposure to worry about.
+ *
+ * Compositional shift vs. wisteria: cherry blossoms grow on horizontal
+ * flowering branches, so the "face UP" rule manifests as "perched on a
+ * blossoming branch with chin lifted to the canopy of petals above" rather
+ * than "dangling from a cascading raceme."
+ *
+ * Used by:
+ * - scripts/generate-cherry-blossom-animals-batch.js (when scaffolded)
+ * - direct CLI: node scripts/cherry_blossom_animal_prompts.js 100
+ */
+
+const DRUNK_TABLEAUX = [
+ 'chin tipped up to the blossoms, mouth wide, mid-guzzle from a long-stemmed wine glass — burgundy sloshing down its throat',
+ 'face turned skyward through falling petals, draining a frosted vodka bottle held in both paws, condensation dripping onto its chest',
+ 'looking straight up at the cherry canopy, mid-toast with a champagne flute, golden bubbles cascading',
+ 'head tilted back among the blossoms, gulping from an emerald-green sake bottle, foam sliding down its chin',
+ 'gazing up through pink petals, sipping rosé from a coupe glass, pink liquid clinging to its lip',
+ 'mouth agape toward the flowering canopy, pouring a martini directly into its open jaw, two olives mid-air',
+ 'snout aimed at the sky beneath the cherry branches, draining a crystal whiskey tumbler, last amber drops trailing',
+ 'chin up beneath cascading petals, both paws gripping a sake bottle, lime wedge falling from its lips',
+ 'tipsy, head lolled back staring at the blossom canopy, half-empty cognac snifter dangling',
+ 'face skyward through the falling petals, mid-swig from a stout pint, cream head smeared across its muzzle',
+];
+
+const STONED_TABLEAUX = [
+ 'eyes half-closed and turned upward to the cherry blossoms, slow contented sip from a coupe glass',
+ 'face beatifically upturned to the petal canopy, slow-motion drink from a wine glass, dreamy smile',
+ 'chin lifted toward the falling petals, blissed-out, savoring a slow pour of amber whiskey down its throat',
+ 'eyes lidded, gazing up through the cherry blossoms, languid sip from a tall pilsner',
+ 'mellow, head tilted back amid swirling petals, slow guzzle from a frosted sake bottle, deeply at peace',
+ 'face dreamily upturned beneath the canopy, sucking on a long curly straw rooted in a magnum of champagne',
+ 'eyes soft and skyward, savoring a slow sip from a martini glass, cheeks rosy with petal-pink reflection',
+ 'tranquil, gazing up through pink blossoms, both paws hugging a bottle of rosé tipped into its mouth',
+ 'mouth lazily open to the blossoms, slow sip from a cognac snifter, blissful trance',
+ 'eyes closed, chin up beneath falling petals, contented sigh mid-sip from a champagne flute',
+];
+
+const CHERRY_COLORS = [
+ 'pale-pink yoshino cherry blossoms, classic hanami softness, dense five-petal clusters',
+ 'snow-white somei cherry blossoms streaked with faint blush at the petal base',
+ 'deep coral kanzan double-flowered cherry blossoms, lush and saturated',
+ 'pale-blush shidare weeping-cherry blossoms, drooping branches heavy with flowers',
+ 'rose-red kawazu cherry blossoms, early-spring vivid pink',
+ 'cream-and-pink okame cherry blossoms, gradient petals from ivory to soft rose',
+ 'almost-white ukon (yellow-green) cherry blossoms, unusual chartreuse-tinged ivory',
+ 'antique mauve fugenzo double cherry blossoms, mature blush tones',
+ 'pure ivory shogetsu cherry blossoms, refined and ceremonial',
+ 'sunset-coral autumn cherry blossoms (jugatsuzakura), warm and rare',
+];
+
+const NO_LEAVES =
+ 'NO leaves, NO foliage, NO bamboo, NO ferns, NO palm fronds, NO banana, NO tropical, NO jungle, NO drooping greenery — cherry blossoms are the ONLY botanical element, branches show flowers only (per ukiyo-e tradition), and any incidental greenery must point UPWARD, never downward or sideways';
+
+const PALETTES = [
+ 'emerald and bone-ivory background, gold-leaf accents, archival watercolor',
+ 'sage green and cream, blush-pink highlights, soft dusty rose accents',
+ 'deep navy ink on bone white, monochromatic indigo gradient',
+ 'champagne on midnight navy, subtle metallic shimmer',
+ 'forest green with iridescent jewel-tone accents — sapphire, amethyst, emerald, ruby',
+ 'soft watercolor pastels — peach, lavender, mint, sky blue — on warm cream',
+ 'antique gold and matte black, ivory background',
+ 'powder blue and parchment, faded sepia accents',
+ 'oxblood and cream, dark olive accents',
+ 'pale-celadon green on bone-white, faded coral accents, vintage botanical',
+ 'sumi-e ink wash on rice-paper cream, pale-pink accents only',
+ 'edo-era woodblock palette — indigo, vermillion, ochre, ivory',
+];
+
+const COMPOSITIONS = [
+ 'allover seamless repeat, animals scattered along horizontal flowering cherry branches, ALL faces tipped UP toward the petal canopy above',
+ 'half-drop repeat, animals nested in blossom clusters, ALL chins lifted upward through falling petals',
+ 'tight 24-inch tile repeat, dense scatter of upward-gazing animals among drifting cherry petals',
+ 'mirrored axis repeat, animals in pairs facing skyward beneath an arching blossom canopy',
+ 'horizontal branch repeat, branches traversing the wall left-to-right, animals climbing and looking up',
+ 'tossed-bouquet repeat, animals interspersed with cut cherry sprays, all faces lifted to the petals',
+ 'large-scale mural repeat, hero animal centered face-up under a hero blossom branch, petals radiating',
+ 'striped column repeat, animals in vertical bands gazing upward through layered blossom canopies',
+ 'diagonal flow repeat, blossom branches guiding the eye upward, animals turned to follow',
+ 'allover botanical repeat with breathing space, every animal’s gaze tilted toward the cherry petals above',
+ 'ukiyo-e-inspired asymmetric repeat, a single arching branch dominates each tile, animals perched and looking up',
+ 'falling-petal repeat — drifting petals fill the negative space, animals anchor among the flowering branches, all eyes skyward',
+];
+
+const STYLES = [
+ 'fine archival watercolor in the style of a 19th-century botanical plate',
+ 'gouache illustration with crisp ink linework, gallery-quality',
+ 'hand-pulled silkscreen wallpaper, soft layered tones, refined repeat',
+ 'chinoiserie-inspired brushwork on aged silk, mineral pigment',
+ 'block-printed wallpaper feel, hand-carved edges, archival paper grain',
+ 'pen-and-watercolor garden journal aesthetic, refined and personal',
+ 'mid-century botanical lithograph, slight halftone, archival print',
+ 'modern fine-art illustration with luminous color washes, no neon',
+ 'painterly gouache with confident brushwork, fabric-pattern feel',
+ 'antique decorator wallpaper, bone-paper texture, slightly faded',
+ 'ukiyo-e woodblock print, flat color planes, confident black outline',
+ 'sumi-e brushwork, monochrome ink with single accent color, breathing rice-paper feel',
+];
+
+const ANIMALS_FACE_UP = [
+ 'long-armed Bornean orangutan perched on a flowering cherry branch, chin tipped UP through the petals',
+ 'small gibbon balancing on a blossoming bough, face skyward beneath the canopy',
+ 'fluffy red panda curled on a horizontal cherry branch, gazing up through pink petals',
+ 'spider monkey looped by its prehensile tail around a flowering branch, mouth open to the sky',
+ 'capuchin monkey perched on a cherry branch, head tilted back to the blossoms above',
+ 'sloth hugging a cherry bough, slow blink upward at the falling petals',
+ 'lemur with ringed tail wrapped around a flowering stem, ears forward, looking up through the cherry canopy',
+ 'small lar gibbon swinging from a blossoming branch, face turned to the petal sky',
+ 'colobus monkey draped over a cherry bough, gaze tipped upward through the flowers',
+ 'wide-eyed tarsier clinging to a flowering branch, neck craned skyward beneath the blossoms',
+ 'koala wedged into a fork of cherry branches, face turned up to the petal canopy',
+ 'tipsy raccoon balancing on a blossoming branch, snout up, eyes on the falling petals',
+ 'shiba inu standing on a low cherry branch, face lifted to the canopy, tail curled (Edo-era nod)',
+ 'fox cub crouched on a flowering bough, eyes upturned to the drifting petals',
+ 'snow monkey (Japanese macaque) seated on a cherry branch, gaze beatifically skyward through the blossoms',
+];
+
+function pickRand(arr, exclude = new Set()) {
+ for (let tries = 0; tries < 50; tries++) {
+ const v = arr[Math.floor(Math.random() * arr.length)];
+ if (!exclude.has(v)) return v;
+ }
+ return arr[Math.floor(Math.random() * arr.length)];
+}
+
+function buildPrompt({ state = null, seed = null } = {}) {
+ const rng = (seed != null)
+ ? (() => { let s = seed >>> 0; return () => { s = (s * 1664525 + 1013904223) >>> 0; return s / 2 ** 32; }; })()
+ : Math.random;
+ const pick = arr => arr[Math.floor(rng() * arr.length)];
+ const s = state || (rng() < 0.5 ? 'drunk' : 'stoned');
+ const tableau = s === 'drunk' ? pick(DRUNK_TABLEAUX) : pick(STONED_TABLEAUX);
+ return [
+ pick(ANIMALS_FACE_UP),
+ tableau,
+ `beneath ${pick(CHERRY_COLORS)}`,
+ NO_LEAVES,
+ `palette: ${pick(PALETTES)}`,
+ pick(STYLES),
+ pick(COMPOSITIONS),
+ 'CRITICAL: every animal MUST be facing UP toward the cherry blossoms above — chin lifted, eyes/snout skyward, no animals looking down or sideways',
+ 'seamless wallpaper repeat, archival quality, refined heritage botanical aesthetic, no neon, no text, no watermark',
+ ].join(', ');
+}
+
+function buildN(n, opts = {}) {
+ const out = [];
+ const usedAnimals = new Set();
+ const usedCherry = new Set();
+ for (let i = 0; i < n; i++) {
+ if (usedAnimals.size >= ANIMALS_FACE_UP.length - 1) usedAnimals.clear();
+ if (usedCherry.size >= CHERRY_COLORS.length - 1) usedCherry.clear();
+ const animal = pickRand(ANIMALS_FACE_UP, usedAnimals); usedAnimals.add(animal);
+ const cherry = pickRand(CHERRY_COLORS, usedCherry); usedCherry.add(cherry);
+ const state = opts.state || (Math.random() < 0.5 ? 'drunk' : 'stoned');
+ const tableau = state === 'drunk' ? pickRand(DRUNK_TABLEAUX) : pickRand(STONED_TABLEAUX);
+ out.push([
+ animal, tableau,
+ `beneath ${cherry}`,
+ NO_LEAVES,
+ `palette: ${pickRand(PALETTES)}`,
+ pickRand(STYLES),
+ pickRand(COMPOSITIONS),
+ 'CRITICAL: every animal MUST be facing UP toward the cherry blossoms above — chin lifted, eyes/snout skyward',
+ 'seamless wallpaper repeat, archival quality, refined heritage botanical, no neon, no text, no watermark',
+ ].join(', '));
+ }
+ return out;
+}
+
+module.exports = {
+ buildPrompt, buildN,
+ DRUNK_TABLEAUX, STONED_TABLEAUX, CHERRY_COLORS, NO_LEAVES,
+ PALETTES, STYLES, COMPOSITIONS, ANIMALS_FACE_UP,
+};
+
+if (require.main === module) {
+ const n = parseInt(process.argv[2] || '100', 10);
+ const prompts = buildN(n);
+ for (const p of prompts) console.log('---\n' + p + '\n');
+}
← e145932 wisteria-animals: also block ferns + drooping plants; any in
·
back to Wallco Ai
·
cherry-blossom-animals: batch runner (default N=10) — fans p 7620d5d →