# Design Language for mujun.dev

## Aesthetics and Tone

mujun.dev channels the visual atmosphere of a clandestine data operations center buried beneath the neon-drenched streets of a near-future megacity -- a place where streaming telemetry feeds paint luminous arcs across dark glass walls, and every surface pulses with the quiet authority of information in motion. The aesthetic is **cyberpunk command infrastructure**: not the cliche of rain-soaked alleyways and holographic billboards, but the austere, climate-controlled interior where the city's nervous system is actually monitored -- banks of curved displays showing real-time network topologies, fluid dynamics simulations rendered as sinuous light ribbons, and scrolling data columns that cascade like digital waterfalls across obsidian surfaces.

The tone is **authoritative** without being cold. This is the voice of a system that has earned trust through relentless precision -- measured, declarative, structurally confident. Every typographic choice, every color threshold, every animation curve communicates institutional competence. There is no playfulness here, no soft edges, no conversational warmth. Instead, there is the deep reassurance of watching a perfectly calibrated instrument operate at full capacity. The mood sits at the intersection of operational gravitas and technological sublimity -- the feeling of standing in a power station's control room at 3 AM, watching gauges hold steady while the city sleeps.

Inspiration sources: the command interfaces in Denis Villeneuve's Blade Runner 2049 (the Wallace Corporation's amber-lit data rooms), the topographic data overlays in Ghost in the Shell: Stand Alone Complex, the telemetry dashboards of SpaceX mission control, and the data-sculpture installations of Ryoji Ikeda -- particularly his "datamatics" series where raw numerical data becomes flowing, luminous architecture.

## Layout Motifs and Structure

The layout follows a **dashboard** composition -- a dense, information-rich arrangement of panels, readouts, and visualization zones that fills the viewport like a mission control interface. Unlike conventional web layouts that stack content vertically in a single column, this design distributes content across a multi-zone grid that the user scans rather than scrolls, creating a sense of simultaneous data awareness.

**Grid Architecture:**

The viewport is divided using CSS Grid into a primary 12-column, 8-row matrix. Content occupies named grid areas:

- **Telemetry Bar (top, columns 1-12, row 1):** A narrow horizontal strip (height: 48px) spanning the full width, displaying a continuously animated data ticker -- a stream of monospaced numerical values (simulated metrics: uptime percentages, latency figures, throughput rates) scrolling left-to-right in #00e5ff on a #0a0e1a background. This bar establishes the cyberpunk-data atmosphere immediately.

- **Primary Viewport (columns 2-9, rows 2-6):** The largest panel, occupying approximately 60% of the visible area. This is where the main narrative content lives -- text blocks, data visualizations, and flowing curve animations. The panel has a subtle 1px border in #1a3a5c with a faint inner glow (box-shadow: inset 0 0 30px rgba(0, 229, 255, 0.03)).

- **Sidebar Feeds (columns 10-12, rows 2-7):** A vertical stack of smaller data panels on the right, each 120-160px tall, showing different "system readouts" -- these are actually content sections (about, projects, contact) rendered in a compact, data-dashboard style with small headings and dense text.

- **Topology Map (columns 1, rows 2-7):** A narrow left rail (80px wide) containing a vertical SVG visualization -- a stylized network topology rendered as connected nodes with flowing-curve paths between them, animated with slow pulse effects. This serves as both navigation and decoration.

- **Status Bar (columns 1-12, row 8):** A bottom strip mirroring the telemetry bar, showing "system status" information -- the current local time, a simulated connection status indicator, and subtle copyright/attribution text.

**Spatial Principles:**

- *Panel Gaps:* All grid gaps are exactly 2px -- tight enough to create a seamless instrument-panel feeling, wide enough to distinguish zones. The gap color matches the deep background (#06080f), making the thin lines between panels feel like the bezels of embedded screens.
- *No Scroll on Load:* The initial viewport presents the complete dashboard without requiring scroll. Content adapts to viewport dimensions using `clamp()` for font sizes and `minmax()` for grid tracks. Scroll is available for deep-dive content within the Primary Viewport panel, but the outer dashboard frame remains fixed.
- *Panel Depth:* Each panel sits at a slightly different visual depth, achieved through varying background opacity levels (#0a0e1a at 0.95 for the primary viewport, #0a0e1a at 0.85 for sidebar feeds) and subtle differences in border luminosity.
- *Responsive Degradation:* On screens below 768px, the layout collapses to a stacked vertical arrangement, but retains the telemetry bar and status bar as fixed headers/footers, preserving the command-center framing even on mobile.

## Typography and Palette

**Typography:**

- **Headlines / System Labels:** "Roboto Slab" (Google Fonts) -- a geometric slab-serif with clean, mechanistic letterforms that evoke the engraved labels on industrial control panels and the stamped type on circuit boards. The slab serifs give each character a bolted-down, load-bearing quality that reinforces the authoritative tone. Used at 2.2rem-4.5rem for primary headings, 1.4rem-1.8rem for panel titles. Weight: 700 (Bold) for maximum structural presence. Letter-spacing: +0.04em to create the measured, spaced-out cadence of instrument labeling. Line-height: 1.2. All headings rendered in `text-transform: uppercase` to reinforce the command-infrastructure aesthetic.

- **Body / Data Narrative:** "Roboto Condensed" (Google Fonts) -- a narrow humanist sans-serif that maximizes information density within panel constraints. Its condensed proportions are native to dashboard interfaces where horizontal space is precious. Used at 0.9rem-1.1rem for body text within panels. Weight: 300 (Light) for a thin, luminous quality against dark backgrounds, 400 (Regular) for denser paragraphs. Letter-spacing: +0.01em. Line-height: 1.65 for comfortable reading at small sizes.

- **Data / Telemetry Readouts:** "Share Tech Mono" (Google Fonts) -- a monospaced typeface designed specifically for technical and data-display contexts, with a squared, pixelated character that reads like hardware terminal output. Used for all numerical displays, the telemetry ticker, status indicators, timestamps, and inline code references. Size: 0.75rem-0.95rem. Weight: 400. Letter-spacing: +0.06em for maximum character separation in data streams. Color: always #00e5ff (cyan data color) against dark backgrounds.

**Color Palette:**

The palette follows a **complementary** scheme anchored on the cyan-orange axis, with deep blue-black foundations:

| Role | Color | Hex | Usage |
|------|-------|-----|-------|
| Deep Void | Near-black with blue undertone | `#06080f` | Page background, outermost frame |
| Panel Base | Dark navy | `#0a0e1a` | Panel backgrounds, content zones |
| Panel Border | Muted steel blue | `#1a3a5c` | Panel outlines, separator lines |
| Cyan Data | Electric cyan | `#00e5ff` | Primary data color, links, active states, telemetry readouts |
| Amber Signal | Warm amber-orange | `#ff8f00` | Complementary accent, warnings, highlights, hover states |
| Coral Alert | Warm coral-red | `#ff3d5a` | Error states, critical indicators, secondary accent |
| Text Primary | Pale blue-white | `#c8d8e8` | Body text, paragraph content |
| Text Muted | Desaturated blue-gray | `#5a7088` | Secondary labels, timestamps, metadata |
| Glow Cyan | Transparent cyan | `rgba(0, 229, 255, 0.15)` | Box shadows, glow effects, focus rings |
| Amber Glow | Transparent amber | `rgba(255, 143, 0, 0.12)` | Hover glow effects, warm accent lighting |

The complementary tension between cyan (#00e5ff) and amber (#ff8f00) creates a visual push-pull that energizes the dark interface -- cyan for data and system state, amber for human interaction points and emphasis. This avoids the monochromatic trap of all-cyan cyberpunk designs while maintaining chromatic coherence.

## Imagery and Motifs

**Data Visualization as Primary Imagery:**

All visual content on mujun.dev is rendered as data visualization -- there are no photographs, no illustrations in the conventional sense. Every image-like element is a chart, graph, topology map, or flowing data stream. This commitment to data-viz-as-imagery creates a site where the boundary between content and decoration dissolves entirely.

**Primary Visual Elements:**

1. **Flowing Curve Networks (Central Motif):** The dominant visual motif is a network of flowing cubic Bezier curves connecting node points across panels. These curves are rendered as SVG `<path>` elements with animated `stroke-dashoffset` values, creating the illusion of data packets traveling along sinuous pathways. The curves use a slow easing function (`cubic-bezier(0.25, 0.1, 0.25, 1)`) with animation durations of 8-15 seconds per complete traversal. Stroke color: #00e5ff at 0.6 opacity, with a gaussian blur filter (stdDeviation: 2px) applied to create a soft neon-tube glow. The curves flow organically between dashboard panels, visually connecting the topology rail to the primary viewport to the sidebar feeds, reinforcing the sense of a living data network.

2. **Radial Data Rings:** Within the Primary Viewport, key metrics or section introductions are presented inside concentric ring visualizations -- three or four nested circles of decreasing radius, each ring representing a different data dimension, animated to rotate at different speeds (outermost: 120s per revolution, innermost: 45s). Rings are rendered as SVG circles with `stroke-dasharray` patterns creating segmented arcs. Fill: none. Stroke: #00e5ff at varying opacities (0.8 outer to 0.3 inner). A central label in "Roboto Slab" at 1.6rem displays the metric or section title.

3. **Scrolling Data Columns:** Sidebar feed panels feature vertically scrolling columns of monospaced data -- simulated log entries, metric snapshots, status codes. These scroll continuously using CSS `@keyframes` animation applied to a `translateY` transform, creating the appearance of live data feeds. Each row is color-coded: #00e5ff for nominal values, #ff8f00 for flagged items, #ff3d5a for critical entries. The scroll speed is deliberately slow (one row every 2.5 seconds) to remain readable yet convey constant activity.

4. **Topographic Contour Background:** Behind the main panel grid, a full-viewport SVG renders a topographic contour map -- concentric, irregularly shaped closed curves resembling terrain elevation lines, drawn with 0.5px strokes in #1a3a5c at 0.3 opacity. The contours shift slowly (CSS transform animation, 60s cycle) to create a sense of terrain morphing beneath the dashboard. This provides subtle visual texture without competing with foreground content.

5. **Pulse Dot Grid:** Empty spaces within panels are filled with a CSS-generated dot grid (radial-gradient dots, 2px diameter, spaced 24px apart) in #1a3a5c. Every 4th dot subtly pulses (opacity oscillation between 0.2 and 0.5 over 3 seconds, staggered by `animation-delay` based on grid position), creating a living-circuit-board effect that prevents dead space from feeling truly dead.

**Iconography:**

No traditional icons. Navigation and interactive elements use geometric symbols derived from data visualization vocabulary: a small line chart icon for the portfolio section, a node-graph icon for the about section, a waveform icon for the blog/writing section. These are inline SVGs using 1.5px strokes in #00e5ff, scaling to 20x20px.

## Prompts for Implementation

**Full-Screen Dashboard Narrative Experience:**

The site opens as a full-viewport dashboard that assembles itself in a choreographed boot sequence. The screen begins at #06080f (pure void). Over 1.5 seconds, the telemetry bar fades in at the top (opacity 0 to 1, `ease-out`), and the data ticker immediately begins its scroll animation. After a 0.3-second pause, the grid lines dividing the dashboard panels draw themselves on screen using `stroke-dashoffset` animation on thin SVG lines -- horizontal lines draw left-to-right, vertical lines draw top-to-bottom, completing in 1.2 seconds. As each panel boundary completes, the enclosed panel fades in (staggered by 0.15s per panel, `ease-in-out`). The topology rail's node network is the last element to appear, with nodes popping in one by one (scale 0 to 1, `cubic-bezier(0.34, 1.56, 0.64, 1)` for a slight overshoot) and curves drawing between them over 2 seconds.

**Scroll Behavior within Primary Viewport:**

The Primary Viewport panel is the only scrollable zone. Content within it is organized as a vertical sequence of narrative sections, each occupying at minimum 80vh within the panel. Scroll-triggered animations within this panel include: section headings that resolve from a scrambled-character state (each letter cycles through random characters before landing on the correct one, staggered by 30ms per character -- think Hollywood "decryption" sequences), data visualizations that draw themselves as they enter the viewport (SVG paths animate from `stroke-dashoffset: totalLength` to `0`), and body text that fades in paragraph-by-paragraph with a 0.1-second stagger. The scroll indicator is a thin vertical line on the right edge of the Primary Viewport (not the browser scrollbar, which is hidden) in #1a3a5c, with a #00e5ff progress indicator that fills downward as the user scrolls.

**Interaction Design:**

- *Hover on Panels:* When hovering over a sidebar feed panel, its border color transitions from #1a3a5c to #ff8f00 (the amber complement) over 0.3s, and its inner glow shifts from cyan to amber (box-shadow: inset 0 0 20px rgba(255, 143, 0, 0.06)). This complementary color shift on interaction creates a satisfying warm-cool toggle.
- *Hover on Links/Interactive Elements:* Text links transition from #00e5ff to #ff8f00 on hover, with a simultaneous `text-shadow: 0 0 8px rgba(255, 143, 0, 0.3)` glow effect. The underline draws itself using a `scaleX` animation from 0 to 1 (origin: left) in #ff8f00.
- *Topology Navigation:* Clicking a node in the left topology rail triggers a pulse animation on that node (scale to 1.5x and back with a glow burst), and the flowing curves connecting to that node brighten to full opacity while others dim. The Primary Viewport smoothly scrolls to the corresponding content section.

**Animation Performance:**

All animations use only `transform` and `opacity` properties for GPU-composited rendering. SVG animations use SMIL or CSS where possible, falling back to requestAnimationFrame for complex path animations. The telemetry ticker and data column scrolls use `will-change: transform` to hint layer promotion. Total animation count is capped at 15 simultaneous animated elements to prevent jank on mid-range hardware.

**AVOID:** CTA-heavy layouts, pricing blocks, stat-grids displayed as marketing vanity metrics, testimonial carousels, hamburger menus with full-screen overlays, gradient hero banners, stock photography of any kind, playful/friendly copywriting tone, rounded bubbly UI elements, pastel color accents.

## Uniqueness Notes

**Differentiators from other designs:**

1. **True Dashboard-as-Website Architecture:** While 18% of existing designs use a dashboard layout element, this design commits fully to the dashboard paradigm as the entire structural foundation -- the site IS a dashboard, not a website that contains dashboard widgets. The fixed multi-panel grid with a single scrollable viewport zone, continuous data ticker, and persistent status bar create an experience that genuinely feels like logging into a monitoring system rather than visiting a webpage. No other design in the portfolio treats the entire viewport as a single instrument panel with this level of structural commitment.

2. **Flowing-Curve Network as Navigation System:** The flowing-curves motif (appearing at only 1% frequency) is elevated from decorative element to functional navigation infrastructure. The left-rail topology map with its animated cubic Bezier paths connecting nodes is simultaneously the site's primary visual signature, its wayfinding system, and its most distinctive decorative element. The curves are not background ornamentation -- they are the structural connective tissue of the interface, linking panels and guiding the user's eye through the information architecture.

3. **Complementary Cyan-Amber Chromatic System:** At only 7% frequency, the complementary palette strategy is rare in existing designs. The specific cyan (#00e5ff) / amber (#ff8f00) pairing creates a color language where system state (cyan = data, nominal, machine) and human interaction (amber = hover, attention, engagement) are chromatically differentiated. This functional color coding goes beyond decoration -- it gives the interface a legible emotional temperature system that shifts warm when the user engages.

4. **Slab-Serif in Cyberpunk Context:** At 3% frequency, slab-serif typography is virtually absent from the portfolio. Pairing "Roboto Slab" with the cyberpunk aesthetic creates an unexpected collision -- slab serifs carry industrial, mechanical weight (typewriter hammers, stamped metal, engineering specification sheets) that actually reinforces the command-infrastructure tone more effectively than the expected monospace-only approach. The bolted-down, load-bearing quality of slab serifs communicates structural authority in a way that airy sans-serifs cannot.

5. **Data-Viz as Sole Imagery System:** While data-viz imagery appears at 6% frequency, no other design uses it as the exclusive visual language. By eliminating all non-data-visualization imagery (no photography, no illustrations, no abstract decorative shapes), the site achieves a radical visual purity where every pixel serves the cyberpunk-data-operations narrative. The radial data rings, flowing curve networks, scrolling data columns, and topographic contours form a complete visual ecosystem that needs nothing else.

**Chosen Seed / Style:**
- aesthetic: cyberpunk
- layout: dashboard
- typography: slab-serif
- palette: complementary
- patterns: scroll-triggered
- imagery: data-viz
- motifs: flowing-curves
- tone: authoritative

**Avoided Overused Patterns:**
- playful aesthetic (95% frequency) -- replaced with cyberpunk (5%)
- centered layout (99% frequency) -- replaced with dashboard (18%)
- mono typography as primary (99% frequency) -- mono used only for data readouts, slab-serif (3%) leads
- warm palette (100% frequency) -- replaced with complementary cool-warm axis (7%)
- minimal imagery (94% frequency) -- replaced with data-viz (6%)
- vintage motifs (84% frequency) -- replaced with flowing-curves (1%)
- friendly tone (98% frequency) -- replaced with authoritative (19%)
<!-- DESIGN STAMP
  timestamp: 2026-03-10T16:10:14
  domain: mujun.dev
  seed: seed
  aesthetic: mujun.dev channels the visual atmosphere of a clandestine data operations center...
  content_hash: 12b8d05ad168
-->
