// ============================================================ // 4 modern SaaS nav layouts. Each artboard is a full 1440×900 // app/marketing chrome with the nav as the focal point and just // enough body content to read context. Original brand "Lattice // Studio" used throughout so the navs feel like one product // family — the variable is the nav pattern itself. // ============================================================ // Generic placeholder block const NavImgSlot = ({ label, h = 200, tone = "light" }) => { const p = tone === "dark" ? { bg: "#1a1a1f", stripe: "#222229", ink: "#7a7a85" } : { bg: "#f3f3f0", stripe: "#e7e7e3", ink: "#7a7a72" }; return (
{label}
); }; // Tiny stroke icon helper — single line so it doesn't bloat the file const I = ({ d, size = 16, sw = 1.6 }) => ( {d} ); // Common path sets, kept terse const Paths = { search: <>, bell: <>, cmd: , home: <>, inbox: <>, people: <>, building: <>, target: <>, check: <>, workflow: <>, bar: <>, hash: , lock: <>, plus: , chevron: , arrow: , star: , doc: <>, spark: , }; const sansStack = "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif"; // ============================================================ // 1. SIDEBAR — workspace + sections + secondary // (Linear / Notion / Twenty school) // ============================================================ const NavSidebar = () => { const ItemRow = ({ icon, label, count, active }) => (
{label} {count && {count}}
); const SectionHeader = ({ label }) => (
{label}
); return (
{/* SIDEBAR */} {/* CONTENT */}
Workspaces / Marketing site

Marketing site

14 pages · last edited 4 minutes ago by Mira

{["Homepage", "Pricing", "Changelog"].map(t => (
{t}
Edited 2h ago · Mira
))}
); }; // ============================================================ // 2. ICON RAIL + CONTEXT PANEL — Slack / Discord / Mail school // ============================================================ const NavIconRail = () => { const RailIcon = ({ icon, active, badge, color }) => (
{badge && ( {badge} )}
); const ChannelItem = ({ name, active, unread, mention }) => (
# {name} {mention && {mention}}
); return (
{/* RAIL */}
L
MR
{/* SECONDARY PANEL */}
Lattice HQ
Jump to… ⌘K
Channels
Direct messages
{[ ["Sun Kim", "#e8a87c", true], ["Devi Patel", "#a8c8e8", false], ["Theo Roux", "#c8e8a8", false], ].map(([n, c, online], i) => (
{online && }
{n}
))}
{/* CONTENT */}
# launch-2026 · 18 members
); }; // ============================================================ // 3. TOP HORIZONTAL + COMMAND BAR — Vercel / Stripe / Linear web // ============================================================ const NavTopHorizontal = () => { const TabItem = ({ label, active }) => (
{label}
); return (
{/* DARK TOP BAR */}
{/* Row 1: brand + workspace + global */}
{/* Brand */}
Lattice
/ {/* Workspace */}
MR
mira-reyes
/ {/* Project */}
marketing-site Hobby
{/* Command bar — focal point */}
Find or jump to anything… ⌘K
{/* Right icons */}
MR
{/* Row 2: tabs */}
{/* CONTENT */}

Overview

Last deployment 14 minutes ago to main

Production · Last 24h
Requests
284,012 +12%
Edge p99
47ms −3ms
); }; // ============================================================ // 4. FLOATING GLASS NAV — marketing site / homepage pattern // ============================================================ const NavFloatingGlass = () => (
{/* Soft aurora background */}
{/* Floating pill nav — the focal point */}
Lattice
{["Product", "Solutions", "Customers", "Pricing", "Docs"].map((l, i) => ( ))}
{/* Tiny status pill above nav */}
All systems normal ·{" "} ● 99.99% uptime
{/* HERO */}
NEW Lattice 4.0 — agents that draft for you ·{" "} read more →

The workspace where{" "} good ideas {" "} compound.

Docs, canvases, and agents in one luminous surface. Built by people who got tired of switching tabs.

); // Export to window Object.assign(window, { NavSidebar, NavIconRail, NavTopHorizontal, NavFloatingGlass, });