Index of every page on this site: llms.txt
All skills
harlan-zw avatar

/nuxt-frontend-design

@9c94eb4
Run it yourself

Build or polish Nuxt UI v4+ pages and design systems. Use for landing pages, dashboards, tokens, motion, or generic-looking UX.

Use this Skill: https://skilld.dev/gh/harlan-zw/harlan-agent-kit/nuxt-frontend-design

Nothing lands on disk. Nothing to clean up.

Fork this Skill

Edit a local copy. It keeps the author and licence.

referencespolishux-writing.md

≈660 tokens on demand. Your agent reads this file only when SKILL.md points to it.

UX Writing

Interface copy that's clear, actionable, and human.


Button Labels

Replace vague labels with specific verb-object pairs:

Bad Good
OK Save changes
Submit Create account
Yes Delete 5 items
Cancel Keep editing

Destructive actions should name what's being destroyed. Confirmation buttons should describe the outcome, not just confirm the dialog.


Error Messages

Every error needs three parts: what happened, why, and how to fix it.

Bad Good
Invalid input Email address isn't valid — include an @ symbol
Error 403 You don't have permission. Ask your admin for access
Something went wrong Couldn't save — check your connection and try again

Never blame the user ("You entered an invalid email"). Reframe as the system's perspective ("Email address isn't valid").


Empty States

Transform empty screens into onboarding moments:

  1. Acknowledge the empty state
  2. Explain the value of what will go here
  3. Provide a clear next action
<UEmpty
  icon="i-lucide-inbox"
  title="No messages yet"
  description="When customers reach out, their messages will appear here."
  :actions="[{ label: 'Import contacts', click: importContacts }]"
/>

Voice vs Tone

  • Voice stays constant — your brand personality
  • Tone shifts with context — celebratory for success, empathetic for errors

Humor doesn't belong in error contexts — users are already frustrated.


Microcopy Rules

  • Loading states: Be specific. "Uploading 3 files..." not "Loading..."
  • Confirmations: Brief. "Saved" not "Your changes have been successfully saved"
  • Tooltips: One line max. If you need more, it's not a tooltip
  • Links: Text must stand alone meaningfully — "Read the migration guide" not "Click here"
  • Numbers: "3 items" not "3 item(s)". Handle pluralization properly

Internationalization

Plan for text expansion — German adds ~30%, Chinese is much more compact. Avoid:

  • Hardcoded string concatenation (use ICU message format or i18n templates)
  • Text embedded in images
  • Layouts that break with longer strings
  • Date/number formats that assume locale

Use consistent terminology throughout — one word for one concept. A "project" shouldn't become a "workspace" on another page.


Anti-Patterns

  • Placeholder text as the only label
  • "Are you sure?" without explaining consequences
  • Walls of text in modals
  • Jargon or technical language in user-facing copy
  • Inconsistent terminology across pages
  • Error messages that only show error codes

Source: SKILL.md on GitHub

skilld matched fixed text patterns in SKILL.md and file names. Patterns miss obfuscated code.

skilld run checks every file with the same patterns. It asks for approval before it loads a Skill with a behavior marked Needs approval.

1 warning3mo3 checks · Risk MEDIUM
  • Gen Agent Trust Hub3mo

    The skill utilizes dynamic context injection to probe the local environment and executes external CLI tools via npx, including an unverified package for CSS analysis.

  • Socket3mo

    No alerts

  • Snyk3mo

    Risk: LOW · No issues

Signed by skilld at 9c94eb4. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub last week.

Activeupdated last month
argument-hint
[component/page/area]
effort
max

README badge

README badge for harlan-zw/harlan-agent-kit/nuxt-frontend-design