Retro Pixel Dark Terminal — Deep Purple & Neon Dark-Mode Design System & Template

A complete, production-ready design system for building retro-terminal and pixel-arcade portfolio sites. Retro Pixel Dark Terminal is dark-first, deep purple, and built on Roboto Mono typography with high-contrast neon accents, thick structural borders, and unique pixel-notched corner clips. Every interaction is sharp and structural—no drop shadows, no blur, just bold neon highlights and perfectly square interactive elements.

Inspired By:jules.google

Developer and Terminal — September 2026

MD
DESIGN.md
MD
AGENTS.md
MD
README.md
HTML
preview.html
PNG
preview.png

Features

  • Saturated deep purple base with electric fuchsia, cyan, and amber accents.
  • Fully responsive, mobile-friendly layout.
  • 100% monospace typography layout with custom pixel-notched card components.
  • Easy to customize via CSS variables.
  • Clean, semantic structure that’s simple to integrate with any framework.
background#1d0245
background-deep#09051c
surface#130825
surface-muted#2c1158
text-primary#f2ecfa
text-secondary#c0a0ec
text-muted#7f4cd6
border#2c1158

Design Specification (DESIGN.md)

Overview

The visual identity is a deep, saturated purple world with a retro-terminal / pixel-arcade mood. Almost the entire interface sits on a dark plum background, monospace typography runs through every surface, and playful pixel-art imagery is paired with sharply notched "pixel" corners instead of traditional rounded ones. Contrast is created with neon fuchsia, cyan, amber, and lavender accents that pop against the dark surfaces. The result feels technical yet whimsical — a coding-tool aesthetic that is unafraid of color.

Colors

The palette is built around a deep royal-purple base layered with near-black surfaces for inputs and code, and bright accent colors for actions, labels, and highlights.

  • background (#1d0245): The dominant page color. Nearly every section sits on this deep purple, giving the whole system its dark, saturated mood.
  • background-deep (#09051c): Used for input fields, command surfaces, and code sub-surfaces where the deepest contrast is needed.
  • surface (#130825): Card and bubble background. Slightly darker and less saturated than the page, so cards read as recessed panels.
  • surface-muted (#2c1158): Used for lower-priority elevated surfaces and mid-tone borders.
  • text-primary (#f2ecfa): The lightest text color, reserved for headings, important labels, and emphasis on dark surfaces.
  • text-secondary (#c0a0ec): Default body text on dark cards. Soft lavender rather than pure white, to reduce harsh contrast.
  • text-muted (#7f4cd6): Line numbers, inactive labels, and subtle metadata.
  • border (#2c1158): Thick dark borders that define card edges and section separation.
  • border-strong (#4e1e9a): Used for stronger outlines and hover-adjacent borders.
  • accent-primary (#642cc2): Primary action color. Saturated violet used for main CTAs.
  • accent-primary-hover (#7f4cd6): Hover state for primary actions and a key accent for numbered step badges.
  • accent-fuchsia (#e879f9): Bright pink used for tags, diff highlights, and playful emphasis.
  • accent-cyan (#00d2ef): Electric cyan for outlines, status tags, and secondary highlights.
  • accent-amber (#fbbf24): Warm yellow used for tags, warnings, and code strings.
  • accent-lavender (#d0b9ff): Light pastel purple used for premium badges and subtle highlights.
  • keyword (#ff79c6): Hot pink used for syntax keywords inside code blocks.

Typography

Typography is entirely monospace. This is a defining characteristic of the system — headings, body copy, labels, buttons, and code all use the same monospace family, which reinforces the terminal / editor aesthetic.

  • body: The default text style at 15px with a relaxed 1.5 line-height. Used for most paragraphs, buttons, and UI labels.
  • small: 0.875rem, used for secondary descriptions, navigation links, and compact labels.
  • caption: 0.75rem, used for tags, footer links, and the smallest metadata.
  • large: 1.125rem, used for step numbers, emphasized labels, and larger card titles.
  • bold: Weight 700 for strong labels and interactive elements.
  • black: Weight 900 for the strongest headings and the most emphatic labels.

Layout

Layout is centered and generous. Content is constrained to a max width of roughly 64–80rem, with narrower inner columns (36rem–600px) for readable text and messaging. Sections stack vertically with large gaps, and the page uses a two-column split (description on one side, visual example on the other) that collapses to a single column on mobile.

Spacing follows a 4px base unit. Common paddings are 16px, 24px, and 32px; large vertical gaps between sections are 48px, 80px, and 120px. Cards consistently use 24px padding, and code blocks use 16px horizontal with extra bottom padding for the pixel notch.

Responsive behavior is driven by md (768px) and lg (1024px) breakpoints: multi-column layouts collapse to a single column below md, and the largest 3-column plan grid only appears at lg. On small screens, pixel-notched corners are removed in favor of plain square corners for readability.

Elevation & Depth

Depth is expressed through borders and background layers rather than shadows. There are no drop shadows anywhere in the system. Instead, thick borders (2px–4px) in dark purple define card edges, and layering is achieved with z-index and translucent backgrounds.

Several decorative patterns add depth without elevation: a dotted three-square pattern used as horizontal dividers between sections, and a repeating square-grid pattern used behind offset card layers to create a subtle "stacked paper" effect. Cards can be double-layered with the pattern square offset behind a solid card to suggest a second sheet underneath.

Transparency is used sparingly — e.g. bg-purple-900/80 for overlay panels — but the dominant surfaces are opaque.

Shapes

The shape language is deliberately mixed: most interactive elements are perfectly square (buttons, inputs, badges have no border radius), while cards use "pixel" corners created with clip-path polygons that cut small stair-step notches out of each corner. This produces a retro pixel-art silhouette rather than a smooth rounded rectangle.

  • Pixel-sm: 10px-step corner notches for smaller cards and badges.
  • Pixel-lg: 20px-step corner notches for larger container frames.
  • Square: Buttons, tags, inputs, and badges are sharp rectangles with no radius.
  • Radius scale: A standard small radius scale (6px/8px/12px) exists for code blocks and a few utility elements.
  • Borders: Thick 4px borders are the default for cards and outlined buttons. Bottom-only borders (2px–4px) are used on tags, inputs, and list rows to create a "pressed" or "underlined" effect.

Components

Buttons

Primary buttons are solid saturated violet with light lavender text, sharp corners, and a bold weight. Secondary buttons invert to a pale pink background with deep fuchsia text. Outline buttons use a thick cyan 4px border over a transparent background with white text and a small cyan icon. All buttons are square — never rounded — and use the monospace body style.

Cards

Dark cards sit on the page background as slightly darker purple panels with a thick dark border and pixel-notched corners. They hold a colored icon, a bold title, and muted lavender body text. Light cards invert the scheme with a pale pink background, deep fuchsia text, and a soft pink border — used for AI/assistant messages and highlight moments. Light cards frequently have a patterned offset layer behind them to suggest depth.

Code Blocks

Code blocks are dark purple panels with a generous rounded-lg container and a pixel-notched inner surface. They use monospace type with syntax colors: hot pink keywords, soft amber strings, pale cream punctuation, and muted violet comments and line numbers. Diff rows use translucent pink (removed) and cyan (added) backgrounds with matching text colors.

Tags & Labels

Tags are compact inline blocks with monospace text, bold weight, a colored background, dark text, and a thicker bottom border in a darker shade of the same hue. They come in fuchsia, cyan, amber, and purple variants. They are used for categories and feature callouts and are always square.

Step Badges

Numbered step badges are solid violet squares with pixel-notched corners, light text, and bold large type. They anchor the left column of multi-step explainer sections.

Inputs

Text input surfaces use the deepest background color with light lavender text and a thick 4px bottom border in dark purple. They are square, full-width, and arranged inline with smaller companion fields.

Navigation

The header is a transparent absolute bar with small square buttons on the right. The footer uses monospace small links in muted purple that brighten to white on hover, with tight gaps and no underlines except on inline text links.

Do's and Don'ts

Do

  • Use monospace typography everywhere — this is the single most important signature of the system.
  • Keep buttons, tags, and inputs perfectly square with no border radius.
  • Use pixel-notched clip-path corners on cards and containers to reinforce the retro aesthetic.
  • Build depth with thick borders and layered pattern backgrounds, not with shadows.
  • Rely on the deep purple page background as the base for nearly every section.
  • Use neon fuchsia, cyan, and amber as accent pops against the dark purple.
  • Keep body text in soft lavender rather than pure white for a softer dark-mode feel.

Don't

  • Don't introduce drop shadows or blur — this system has no elevation shadows.
  • Don't round buttons, tags, or inputs with standard border-radius.
  • Don't use a sans-serif or serif font for UI or body text.
  • Don't place content on pure white or pure black backgrounds — everything lives on purple.
  • Don't use thin borders (1px) on cards; borders are thick and structural.
  • Don't use more than one accent color per component — accents are distinct and categorical.
  • Don't apply pixel notches to buttons or small tags; reserve them for cards and larger surfaces.