Caricature Prompt Maker
A Next.js app that builds detailed, exaggeration-forward image-generation prompts for caricature art. You pick a subject's build, defining feature, expression, wardrobe, props, setting, and art style from a guided set of options, and it assembles a structured prompt tuned to avoid the "tame, slightly-stylized-portrait" output most image generators default to for the word "caricature."
Live at cpm.fmrdigital.dev.
Stack
- Next.js 16 (App Router) + React 19 + TypeScript
- Tailwind CSS v4, CSS-variable design tokens (light/dark)
- Lucide icons
- No backend/database ā fully client-side prompt assembly, no API keys required
Repo layout
app/ Next.js app (see app/README.md for dev commands)
src/app/ Route entry (page.tsx, layout.tsx)
src/components/ UI components (StyleCard, OptionChip, ExaggerationSlider, ...)
src/lib/ styles.ts, options.ts (the option catalogs), generatePrompt.ts (assembly logic), theme.ts
docker-compose.yml Production container definition (see Deployment)
caricature-prompt-maker.md Standalone ChatGPT system prompt this app's option set is derived from
.ai/, .forge/ Autonomous Forge roadmap/policy metadata for this repo
Development
cd app
npm install
npm run dev
Open http://localhost:3000. See app/README.md and app/CLAUDE.md/app/AGENTS.md for app-specific dev notes.
Deployment
No CI ā deploys are manual:
# push to Forgejo main, then on the production host:
cd /opt/caricature
git pull --ff-only origin main
docker compose up -d --build
Runs as the caricature-prompt-maker container on 127.0.0.1:3100, fronted by host Caddy on cpm.fmrdigital.dev.
Standalone prompt
caricature-prompt-maker.md contains a ChatGPT custom-GPT system prompt version of the same interview/exaggeration logic, for use outside this app.








