smithery/neversight

anduril

Opinionated constraints for building better interfaces with Anduril-style design.

Installation

$ npx skills add smithery/neversight --skill anduril

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery/neversight · top by installs.

npx skills add smithery/neversight

Browse all from smithery/neversight

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,386 B
  • docs SUMMARY.md 96 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

Anduril Design System

When invoked, apply these opinionated constraints for building better interfaces.

How to use

  • /anduril — Apply these constraints to any UI work in this conversation.
  • /anduril <file> — Review the file against all constraints and output violations, why it matters, and a concrete fix.

Design System: Anduril

Colors

Core Palette

/* Backgrounds */
--bg-black: #000000;        /* Pure black - dark mode primary */
--bg-dark: #1a1a1a;         /* Near black - dark mode secondary */
--bg-warm: #f5f3ef;         /* Warm off-white - light mode primary */
--bg-white: #ffffff;        /* Pure white - cards, inputs */

/* Text */
--text-primary: #010101;    /* Near black */
--text-inverse: #ffffff;    /* White on dark */
--text-muted: #666666;      /* Secondary text */
--text-subtle: #999999;     /* Tertiary text */

/* Brand Accent */
--accent-lime: #DFF140;     /* Anduril signature lime - primary accent */
--accent-lime-hover: #c8d93a;

/* Semantic */
--color-error: #FF3535;     /* Red - errors, destructive */
--color-error-bg: #fef2f2;
--color-success: #16a34a;   /* Green - success states */
--color-success-bg: #f0fdf4;
--color-info: #2563eb;      /* Blue - info, links */
--color-info-bg: #eff6ff;
--color-warning: #f59e0b;   /* Amber - warnings */
--color-warning-bg: #fffbeb;

/* Borders */
--border-light: #e5e5e5;
--border-default: #ddd;
--border-dark: #333333;

Tailwind Config

colors: {
  anduril: {
    black: '#000000',
    dark: '#1a1a1a',
    warm: '#f5f3ef',
    lime: '#DFF140',
    'lime-hover': '#c8d93a',
  }
}

Usage Guidelines

  • Use --accent-lime sparingly — one accent per view
  • Dark mode: --bg-black background, --accent-lime for CTAs
  • Light mode: --bg-warm background, --text-primary for CTAs
  • NEVER use lime on light backgrounds (poor contrast)
  • Reserve --color-error for destructive actions only

Typography

  • MUST use 'Helvetica Neue', Helvetica, Arial, sans-serif
  • Base font size: 15px, weight: 400, line-height: 1.5
  • Headers: font-weight: 400 (never bold)
  • Labels: 11px, uppercase, letter-spacing: 0.05em, color: var(--text-muted)
  • Hero headings: 48px, font-weight: 400, line-height: 1.1
  • Navigation/header text: 14px, uppercase, letter-spacing: 0.1em

Spacing

  • Cards: padding: 32px
  • Main content: padding: 48px, max-width: 1200px
  • Header: padding: 24px 48px
  • Form elements: margin-top: 16px between fields

Components

Cards

  • background: #ffffff
  • border: none — NO borders
  • border-radius: 0 — sharp corners always
  • NO shadows

Buttons

  • background: var(--text-primary)
  • color: var(--text-inverse)
  • border: 1px solid var(--text-primary)
  • padding: 12px 24px
  • border-radius: 0 — sharp corners
  • font-weight: 400
  • Hover: opacity: 0.85
  • Disabled: opacity: 0.5

Inputs

  • padding: 10px 12px
  • border: 1px solid #ddd
  • border-radius: 0
  • Focus: border-color: var(--text-primary), no outline

Method badges

  • font-family: monospace
  • font-size: 11px
  • text-transform: uppercase
  • letter-spacing: 0.05em
  • padding: 4px 8px
  • POST: color: #2563eb; background: #eff6ff
  • GET: color: #16a34a; background: #f0fdf4

Response/code blocks

  • background: var(--bg-warm)
  • font-family: monospace
  • font-size: 12px
  • Error state: background: #fef2f2; color: #dc2626
  • Success state: background: #f0fdf4; color: #16a34a

Stack

  • MUST use Tailwind CSS defaults unless custom values already exist
  • MUST use motion/react when JavaScript animation is required
  • SHOULD use tw-animate-css for entrance and micro-animations
  • MUST use cn utility (clsx + tailwind-merge) for class logic

Components

  • MUST use accessible component primitives (Base UI, React Aria, Radix)
  • MUST use the project's existing primitives first
  • NEVER mix primitive systems within the same surface
  • MUST add aria-label to icon-only buttons
  • NEVER rebuild keyboard or focus behavior by hand

Interaction

  • MUST use AlertDialog for destructive actions
  • SHOULD use structural skeletons for loading states
  • NEVER use h-screen, use h-dvh
  • MUST respect safe-area-inset for fixed elements
  • MUST show errors next to where the action happens
  • NEVER block paste in inputs

Animation

  • NEVER add animation unless explicitly requested
  • MUST animate only compositor props (transform, opacity)
  • NEVER animate layout props (width, height, top, left, margin, padding)
  • SHOULD use ease-out on entrance
  • NEVER exceed 200ms for interaction feedback
  • MUST pause looping animations when off-screen
  • SHOULD respect prefers-reduced-motion

Typography

  • MUST use text-balance for headings, text-pretty for body
  • MUST use tabular-nums for data
  • SHOULD use truncate or line-clamp for dense UI
  • NEVER modify letter-spacing unless explicitly requested

Layout

  • MUST use a fixed z-index scale (no arbitrary z-*)
  • SHOULD use size-* for square elements

Performance

  • NEVER animate large blur() or backdrop-filter surfaces
  • NEVER apply will-change outside an active animation
  • NEVER use useEffect for render logic

Design — Anduril Style

Shape & Surface

  • NEVER use border-radius — sharp corners only
  • NEVER use shadows on cards
  • NEVER use gradients
  • NEVER use glow effects
  • NEVER use purple or multicolor anything

Color Usage

  • Light mode: --bg-warm (#f5f3ef) background, dark buttons
  • Dark mode: --bg-black (#000000) background, lime accent CTAs
  • MUST use --accent-lime (#DFF140) for primary actions in dark mode only
  • NEVER use lime on light backgrounds — use near-black instead
  • SHOULD limit accent color to ONE per view
  • Use semantic colors (--color-error, --color-success) consistently

Typography

  • MUST keep headers lightweight (font-weight: 400)
  • MUST use uppercase + letter-spacing for labels and nav
  • NEVER use bold for headings

States

  • MUST give empty states one clear next action
  • Error states: red text (#FF3535), light red background (#fef2f2)
  • Success states: green text (#16a34a), light green background (#f0fdf4)
  • Disabled: opacity: 0.5, cursor: not-allowed