Redesign Logo

jane-doe/dark-dashboard

by jane-doe

Design System Overview

A comprehensive analytics dashboard featuring a dark theme that's easy on the eyes during long usage sessions. Includes data visualization, KPI cards, and responsive sidebar navigation.

Design Philosophy

  • Dark first: Designed for dark mode, not adapted to it
  • Data density: Information-rich without feeling cluttered
  • Hierarchy through color: Use color sparingly to highlight important data
  • Consistent spacing: 8px grid system throughout

Color Palette (Dark)

  • Background Primary: #0F1115 (Deep black-blue)
  • Background Secondary: #161922 (Elevated surfaces)
  • Background Tertiary: #1E2129 (Cards, inputs)
  • Border: #2A2D35 (Subtle dividers)
  • Text Primary: #F0F2F5 (Near white)
  • Text Secondary: #8B919C (Muted gray)
  • Accent Primary: #6366F1 (Indigo)
  • Accent Success: #22C55E (Green)
  • Accent Warning: #F59E0B (Amber)
  • Accent Danger: #EF4444 (Red)

Typography

  • Font: Inter
  • Scale: 14px base
  • Weights: 400 (body), 500 (labels), 600 (headings), 700 (numbers)

Layout Structure

Sidebar (240px fixed)

  • Logo at top
  • Main navigation with icons
  • Collapsible sections
  • User profile at bottom
  • Collapses to icon-only (72px) on smaller screens

Main Content Area

  • Header with search, notifications, user menu
  • Page title and actions
  • Content grid (adjusts based on screen)

Components

KPI Cards (Top Row)

  • 4-column grid on desktop
  • Icon + label + value + trend indicator
  • Sparkline mini-chart (optional)
  • Hover: subtle lift effect

Main Chart (60% width)

  • Line or area chart
  • Time range selector (7d, 30d, 90d, 1y)
  • Legend toggleable
  • Tooltip on hover

Data Table (40% width)

  • Sortable columns
  • Pagination or infinite scroll
  • Row hover highlight
  • Status badges

Activity Feed (Optional)

  • Real-time updates
  • User avatars
  • Timestamps
  • Action buttons

Interactions

  • Sidebar toggle with smooth animation (300ms ease)
  • Cards lift on hover (transform: translateY(-2px))
  • Table rows highlight on hover
  • Chart tooltips follow cursor
  • Loading states with skeleton screens

Responsive Behavior

  • Desktop: Full sidebar + 3-column grid
  • Tablet: Collapsed sidebar + 2-column grid
  • Mobile: Hidden sidebar (hamburger menu) + 1-column stack

Data Visualization

  • Use Chart.js or Recharts
  • Consistent color mapping for data series
  • Grid lines: subtle, dashed
  • Axis labels: text-secondary color

States

  • Empty: Illustration + helpful message
  • Loading: Skeleton screens matching content structure
  • Error: Inline error with retry action
  • No data: Different from empty - show "No data for selected period"

Performance Considerations

  • Lazy load charts
  • Virtualize long lists
  • Debounce search/filter inputs
  • Use CSS transforms for animations (GPU accelerated)