JobJitsu Empty States
Empty is not failure — it is an unreadied mat. Empty states invite the next technique without nagging.
Principles
- Invite, don’t plead. No “You haven’t done anything yet!” shame.
- One primary action. Secondary links stay quiet.
- Brand-light. Optional line-art (teal belt curve / origami) + short copy.
- Explain the value of filling the void in one sentence.
- Stay local-honest. Don’t promise cloud magic.
Anatomy
[Illustration or Lucide icon — 24–48 px]
Title (sentence case)
One supporting sentence
Primary CTA
Optional secondary text link
Patterns by Surface
Applications — none yet
Title: No applications yet
Body: Set preferences and take your first throw when you’re ready.
CTA: Set preferences
Alt CTA: Import resume
Queue — empty
Title: Queue is clear
Body: Your belt is tied. Add a role when you want the agent to prepare an application.
CTA: Find roles
Follow-ups — none
Title: No follow-ups due
Body: When an application is ready for a polite nudge, it will show up here.
CTA: View applications
Agent idle (first run)
Title: Agent is ready
Body: Your belt is tied. Waiting for your signal.
CTA: Start onboarding
On-device model not configured
Title: Agent unavailable
Body: Point JobJitsu at your on-device model to keep the hunt in this dojo.
CTA: Choose model path
Search — no matches
Title: No roles matched
Body: Widen preferences, or adjust keywords — precision first, volume second.
CTA: Edit preferences
Logs — empty
Title: No agent activity yet
Body: Actions and on-device runs will appear here.
CTA: none (or “Open preferences”)
Visual Rules
- Background: Soft Cloud (light) or Midnight Ink (dark) — no loud gradients.
- Accent illustration: single teal stroke motif; see DESIGN_SYSTEM.md § Illustration.
- Do not use error-red empty states unless the emptiness is caused by a hard failure (then use error pattern).
Don’ts
| Don’t | Do |
|---|---|
| “Start crushing apps!” | “Take your first throw when you’re ready.” |
| Giant sad illustration | Minimal line-art or simple icon |
| Three competing CTAs | One primary |
| Blame the user | Offer the next calm step |