<!-- https://getkonjo.com/design/brand/ninja-prompt-pack · source: docs/design/brand/ninja-prompt-pack.md -->

# The Konjo ninja — character sheet and prompt pack

**Status:** in use (2026-09-30). **Supersedes**
[onboarding-mascot-image-prompts.md](../onboarding-mascot-image-prompts.md), whose canon (red belt, gold
#FFD60A, "Mojo") is retired.

The ninja is Konjo's logo mark and mascot ([Kata interview](../2026-09-29-kata-founder-interview.md)). This
file is how the art is made: ChatGPT generates the drawings, Claude vectorizes and cleans up the chosen ones in
Figma, and Rive animates them. Hand-coded SVG was tried and rejected on 2026-09-30 as too crude for a
character. It stays the method only for geometric marks.

## How to run it

1. Open a **new** ChatGPT chat, so earlier images don't leak into the style.
2. Attach both reference images from [ninja-reference/](ninja-reference/):
   - `head-mark.png`: the approved head. Its shape, tilt, eyes and tails are canon.
   - `current-welcome.png`: today's full-body art, attached **for proportions only**. Its navy hood and
     straight band are out of date.
3. Paste **Prompt 0 (the character sheet)**. Regenerate until you love it. Everything else is drawn from it.
4. Start each pose in the same chat, and **attach the approved character sheet image again** every time.
   This is the single biggest lever for consistency.
5. Generate **3–4 versions of each pose**. Download them all at the largest size, as PNG with a transparent
   background if offered.
6. Upload them all to Claude here. Claude builds a side-by-side, you pick, then Claude vectorizes the winners,
   cleans them up in Figma with named layers ready for Rive, and wires them into the app.

If a result drifts (a new face, a different belt, text appearing), don't fix it with words. Start the pose
again from the character sheet.

## The canon (true in every image)

| Part | Rule |
|---|---|
| **Head** | A perfectly round black hood that covers the whole head. The hood's knot sits at the back right, with **two short tails flying behind** as if moving. |
| **Eye band** | One cream band across the face, **tilted slightly** (higher on the character's left), with fully rounded ends. |
| **Eyes** | Two short dark slits inside the band, **angled inward**: focused and determined, never angry. Emotion comes **only** from the eye shape (and the body). No mouth, no eyebrows outside the band, ever. |
| **Gi** | A cream karate gi (#FDF8EB), jacket crossed left over right, sleeves ending at mid-forearm, trousers ending above the ankle. The hood's black shows in a V at the jacket's neck. |
| **Hands and feet** | Black (the ninja's suit), simple rounded mitten hands with a visible thumb. Bare-looking rounded black feet. |
| **Belt** | **Black belt, always**, tied in a proper square knot, with two tails of equal length. **One small gold tip** (#E8A317) on the end of one tail, the only gold on the character. |
| **Proportions** | Friendly athletic: the head about a third of the height, a sturdy torso, short strong limbs. The character should look like it trains. |
| **Palette** | Ink #111111 (hood and suit), shadow ink #000000; cream #FDF8EB, cream shadow #E6DCC5; gold #E8A317. Brand red #D62828 appears **only as a background**, never on the character. |
| **Never** | Weapons (no swords, stars or nunchaku), speech bubbles or any text, blood or injury, a visible mouth, a different belt colour, gradients, glow, drop shadows, texture, or a scene behind the character. |

## The style (paste-able)

> Premium flat vector mascot illustration, the polish of Duolingo's and Headspace's characters. Clean, bold,
> closed shapes, like finished Adobe Illustrator artwork. Confident smooth curves, no sketchy or broken lines,
> no outlines except where two shapes of the same colour meet. Exactly one flat shadow tone per colour, placed
> as a crisp shape (not a gradient), with light from the upper left. Strong clear silhouette that reads at a
> small size. Transparent background, character centred with generous margin, square image, no text.

## Prompt 0 — the character sheet

> Using the attached head as the exact design of the character's head, create a professional character model
> sheet for "the Konjo ninja", a mascot for a martial-arts training app.
>
> **Character:** a friendly, athletic martial artist. The head is a perfectly round black hood covering the
> whole head, with a knot at the back right and two short tails flying behind. A cream eye band crosses the
> face, tilted slightly, with rounded ends, and holds two short dark eye slits angled inward for a focused,
> determined look. No mouth. It wears a cream karate gi (jacket crossed left over right, sleeves to mid-forearm,
> trousers above the ankle) with the black suit showing as a V at the neck, black mitten hands with a thumb,
> rounded black feet, and a black belt in a proper square knot whose two equal tails end in one small gold tip
> on one tail only. Head about a third of total height, sturdy torso, short strong limbs.
>
> **Sheet layout:** four full-body views of the same character in a neutral standing pose, on one row, evenly
> spaced: front, three-quarter, side profile, back. Below them, a row of five head close-ups showing
> expressions made ONLY by changing the eye slits: determined (default), happy (eyes as upward arcs),
> surprised (small round eyes), focused (narrow flat slits), proud (closed upward arcs).
>
> Colours exactly: ink #111111, cream #FDF8EB, cream shadow #E6DCC5, gold #E8A317. [Paste the style paragraph.]

## Poses

Start every pose with: *"Using the attached character sheet, draw the Konjo ninja exactly as designed (same
head, eye band tilt, eyes, gi, black belt with one gold tip) in this pose:"* Then add the line below, then
the style paragraph.

| # | Name | Used for | Pose line |
|---|---|---|---|
| 1 | Welcome | Onboarding hero, sign-in | Standing tall in a warm greeting: one hand raised palm-out beside the head, the other open palm-up at waist height, welcoming. Happy eyes. Slight three-quarter turn. |
| 2 | Ready | Default, marketing | Fighting-ready stance: feet shoulder-width apart, knees bent, both fists up in a guard in front of the chin. Determined eyes. Three-quarter view. |
| 3 | Kick | App icon (large), splash, marketing | A high side kick, seen from the side: the kicking leg fully extended horizontally at head height with the foot's edge leading, the standing leg slightly bent, arms in a guard, torso leaning away, hood tails and belt tails flying back from the speed. Focused eyes. Correct technique. |
| 4 | Bow | Class start, respect moments | A standing bow (rei): heels together, hands flat on the front of the thighs, back straight, bent forward about 30 degrees at the hips, seen from the side. Eyes closed as calm downward arcs. |
| 5 | Promotion | Belt promotion celebration | Proudly finishing tying a brand-new belt: both hands pulling the knot tight at the waist, chest up, belt tails flicking outward. Proud eyes. Front view. |
| 6 | Jump | Streaks, milestones, share cards | Joyful jump in the air: both fists raised overhead, knees tucked, hood tails and belt tails flying. Happy eyes. |
| 7 | Seiza | Loading, rest days, "nothing today" | Kneeling in seiza (sitting on the heels, back straight, hands resting on the thighs), calm and patient. Focused eyes, soft. Three-quarter view. |
| 8 | Point | Empty states ("start here") | Standing, pointing confidently to the character's right with one arm fully extended, the other hand on the hip. Determined eyes, head turned toward the point. |
| 9 | Oops | Errors, something went wrong | Standing, one hand scratching the back of the hood, the other palm-up in a shrug, slightly off balance. Surprised eyes. Friendly, never sad. |
| 10 | Head mark | App icon, favicon, notification | Only the head, facing front with the slight tilt, filling the frame, as a bold logo mark: flat, no shadow tones, pure black and cream only, perfectly centred on a solid #D62828 red square background. |

## After upload

Claude will do the following:

1. Compare every candidate side by side on real Konjo surfaces: onboarding, an empty state, the promotion
   sheet, the app icon at 16–60px, and Android's circle crop.
2. Vectorize the picks, then clean them in Figma. That means merged shapes, the exact palette, one shadow
   tone, and named layers (`head`, `band`, `eyes`, `tail-l`, `tail-r`, `torso`, `arm-l`, `arm-r`, `leg-l`,
   `leg-r`, `belt`, `knot`, `belt-tail-l`, `belt-tail-r`) so Rive can rig them.
3. Build the app icon (iOS default, dark and tinted), the Android adaptive and monochrome notification icons,
   the favicon and the splash, all generated from the vector masters.
4. Rig the character in Rive for the promotion, jump and check-in moments, with reduce-motion fallbacks.

The logo head still gets a human illustrator's final pass before the public App Store launch.
