// V4 — "Desk" / Sticky-notes — bold editorial-meets-developer aesthetic. // Warm paper background, monospace hero, sticky-note features, brutalist shadows. // Same content as V1/V2/V3, completely different vibe. const V4_WORDS = [ { word: 'seat', ipa: '[siːt]', translation: 'сиденье', meta: 'cars · A2' }, { word: 'dashboard', ipa: '[ˈdæʃbɔːd]', translation: 'приборная панель', meta: 'cars · A2' }, { word: 'fuel', ipa: '[fjuːəl]', translation: 'топливо', meta: 'cars · A2' }, ]; const V4_PAPER = '#F2EDE2'; const V4_PAPER_2 = '#E8E1D2'; const V4_INK = '#1A1814'; const V4_INK_2 = '#3A342A'; const V4_MUTE = '#6C6455'; const V4_RULE = '#D6CCB6'; const V4_BLUE = '#2F4BD9'; const V4_YELLOW = '#F5D547'; const V4_GREEN = '#5C8A3A'; const V4_PINK = '#E8A4A4'; // V4 accent is driven by the Tweaks --accent variable so the design // responds to user accent changes. Fallback matches brick-orange default. const V4_ACCENT_VAR = 'var(--accent, #D94A18)'; const V4_FONT_MONO = "'JetBrains Mono', ui-monospace, monospace"; const V4_FONT_SANS = "'Inter', sans-serif"; const V4_FONT_SERIF = "'Fraunces', serif"; /* ==================== Helpers ==================== */ function V4Tag({ children, color = V4_INK, bg = V4_PAPER_2 }) { return ( {children} ); } function V4BrutalCard({ children, rotate = 0, color = 'white', style = {} }) { return (
{children}
); } /* ==================== Nav ==================== */ function V4Nav({ copy, lang, onLang }) { return ( ); } /* ==================== Hero ==================== */ function V4CodeBlock() { const G = (c) => ({ color: c }); return (
{'// while you work'}
const{' '} word = wordy.pop(
"cars", "A2"
);
await word.show();
→ popped on your screen. learned in context. ✓
); } function V4Hero({ copy }) { return (
{/* ruled-paper horizontal lines */}
{/* red margin line */}
● v3.0 · {copy.hero.badge} /etc/wordytrainer/readme.md

Learn words
while you
actually work .

{copy.hero.sub}

$ install wordy ▸ watch demo
macOS 12+ · free forever plan · 48 MB
50,000+ learners · rated 4.8/5 · ★★★★★
no credit card · no ads · no telemetry
{/* sticky note pinned over code */}
seat [siːt]
сиденье
cars · A2 · pop #14
{/* red pin */}
); } /* ==================== Pains ==================== */ function V4Pains({ copy }) { return (
The diagnostic

{copy.pains.title_v2}

{copy.pains.items.map((it, i) => (
ERR.0{i+1}
“{it.pain}”
→ FIX
{it.answer}

{it.detail}

))}
); } /* ==================== How (receipt / terminal log) ==================== */ function V4How({ copy }) { return (
How it works

Four steps.
That's it.

From opening the app to learning your first word in under two minutes. No tutorials, no onboarding wizards.

{/* receipt top perforation */}
$ wordy init --user=you
{copy.how.steps.map((s, i) => (
{s.n}
{s.title}
{s.desc}
))}
→ ready. 50,000+ learners already running.
); } /* ==================== Features (corkboard of sticky notes) ==================== */ function V4Features({ copy }) { const stickyColors = [V4_YELLOW, V4_PINK, '#A8D8A8', '#A8C8E8', V4_YELLOW, '#E8C8A8']; const rotations = [-2, 1.5, -1, 2, -1.5, 1]; return (
{/* corkboard texture */}
What's inside

Six features, zero fluff.

{copy.features.items.map((f, i) => (
{/* tape */}
№ 0{i+1}
{f.t}
{f.d}
))}
); } /* ==================== AI (typewriter prompt + output) ==================== */ function V4AI({ copy }) { return (
Powered by AI

Any topic. Instant list.

{copy.ai.sub}

$ wordy generate
--topic{' '} "{copy.ai.example_prompt}"
--level{' '} {copy.ai.example_level}
--count{' '} {copy.ai.example_count}
✓ list generated in 0.8s · 25 words · ready to learn
wordy — a2 — cars
AI-generated list
); } /* ==================== Testimonials (hand-written / pull-quote) ==================== */ function V4Testimonials({ copy }) { return (
Who uses it

People who actually learn.

{copy.testimonials.items.map((t, i) => (
"
{t.q}
— {t.name}
{t.role}
))}
); } /* ==================== Pricing (envelopes) ==================== */ function V4Pricing({ copy }) { return (
Pricing

Pick your plan. No lock-in.

{copy.pricing.plans.map((p, i) => (
{p.tag && (
{p.tag}
)}
{p.name}
{p.price}
/ {p.period}
    {p.features.map((f, j) => (
  • {f}
  • ))}
$ {p.cta}
))}
); } /* ==================== FAQ ==================== */ function V4FAQ({ copy }) { const [open, setOpen] = useState(0); return (
FAQ

Questions we keep getting.

{copy.faq.items.map((f, i) => (
{open === i && (
{f.a}
)}
))}
); } /* ==================== Final CTA + Footer ==================== */ function V4Final({ copy }) { return (
Ship it

Start learning words
today.

{copy.final.sub}. Free forever plan. Two minutes to your first word.

$ download for macOS ▸ see features
); } function V4Footer({ copy }) { return ( ); } function V4Landing({ copy, lang, onLang }) { return (
); } window.V4Landing = V4Landing;