Spaces:
Sleeping
Sleeping
| # ๐จ MazeBench UI Visual Guide | |
| This document describes the visual layout and design of the custom MazeBench frontend. | |
| ## ๐ผ๏ธ Overall Layout | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ HEADER โ | |
| โ โ๏ธ MAZE BENCH ENVIRONMENT โ | |
| โ ICE SLIDING PUZZLE โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโ | |
| โ โ โ โ | |
| โ LEFT โ CENTER โ RIGHT โ | |
| โ PANEL โ PANEL โ PANEL โ | |
| โ โ โ โ | |
| โ Controls โ Game Board โ Telemetry โ | |
| โ D-Pad โ โ Live Stats โ | |
| โ Status โ [Maze Grid Display] โ Rewards โ | |
| โ โ โ Observation โ | |
| โ โ โ Move History โ | |
| โ โ โ โ | |
| โโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| ## ๐ Detailed Layout | |
| ### Header Section | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ โ | |
| โ โ๏ธ MAZE BENCH ENVIRONMENT โ | |
| โ (2.5rem, 900 weight, letter-spacing: 3px) โ | |
| โ โ | |
| โ ICE SLIDING PUZZLE โ | |
| โ (0.9rem, 700 weight, letter-spacing: 4px) โ | |
| โ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Background: Linear gradient (dark blue shades) | |
| - Border: 1px solid line color | |
| - Text: White with blue glow shadow | |
| - Center aligned, full width | |
| --- | |
| ### Left Panel (320px wide) | |
| #### 1. Controls Section | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ CONTROLS โ โ Section title | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โโโโโโโโโโโฌโโโโโโโโโโ โ | |
| โ โ ๐ โ ๐ โ โ | |
| โ โ RESET โ STATE โ โ โ Two buttons | |
| โ โโโโโโโโโโโดโโโโโโโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Buttons: Gradient backgrounds, hover lift effect | |
| - Icons: Emoji for visual identity | |
| - Grid layout: 2 columns | |
| #### 2. Level Selection | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ LEVEL SELECTION โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ Choose Level (1-30) โ | |
| โ โโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ Level 0 โผ โ โ โ Dropdown | |
| โ โโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Dropdown: Custom styled select | |
| - Arrow icon: Blue chevron | |
| - 30 level options (0-29) | |
| #### 3. Direction Pad | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ DIRECTION PAD โ | |
| โ Use arrow keys or WASD โ โ Hint text | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โโโโโ โ | |
| โ โ โฒ โ โ โ Up button | |
| โ โโโโโ โ | |
| โ โโโโโ โโโโโ โโโโโ โ | |
| โ โ โ โ โ โข โ โ โถ โ โ โ Left, Center, Right | |
| โ โโโโโ โโโโโ โโโโโ โ | |
| โ โโโโโ โ | |
| โ โ โผ โ โ โ Down button | |
| โ โโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - 3x3 grid layout | |
| - Corner slots: Empty dashed borders | |
| - Center: Static core (non-interactive) | |
| - Arrows: Large, bold, blue colored | |
| - Hover: Lifts up with glow effect | |
| #### 4. Session Status | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ SESSION STATUS โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โก Ready to start... โ โ Icon + message | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Icon changes based on state | |
| - Dark inset background | |
| - Updates with each action | |
| --- | |
| ### Center Panel (Flexible width, ~600px) | |
| #### Game Board Area | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ โ | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ # # # # # # # # # # โ โ | |
| โ โ # . . . . . . . . # โ โ | |
| โ โ # . . . . . . . . # โ โ | |
| โ โ # . . a . . . . . # โ โ โ Maze grid | |
| โ โ # . . . . . . . . # โ โ (48px cells) | |
| โ โ # . . . . . . e . # โ โ | |
| โ โ # . . . . . . . . # โ โ | |
| โ โ # # # # # # # # # # โ โ | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ โจ PUZZLE SOLVED โจ โ โ โ Solved banner | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ (if completed) | |
| โ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| **Cell Types:** | |
| - `#` Wall: Blue gradient, inset shadow | |
| - `.` Path: Dark blue, flat | |
| - `e` Exit: Green tint, rotating diamond โ | |
| - `a` Agent: Glowing blue orb โ | |
| - `b` Agent on Exit: Blue orb on green background | |
| **Animations:** | |
| - Exit diamond pulses (scale + opacity) | |
| - Agent orb glows (shadow intensity) | |
| - Board fades in on load | |
| - Solved banner slides up with celebration | |
| --- | |
| ### Right Panel (380px wide) | |
| #### 1. Live Stats | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ TELEMETRY โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ LIVE STATS โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ Level โ โ | |
| โ โ 5 โ โ โ Full width | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ | |
| โ โ Moves โ Status โ โ | |
| โ โ 12/50 โ RUNNING โ โ โ 2 columns | |
| โ โโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Grid layout: 1 full + 2 half columns | |
| - Values: Large, bold font | |
| - Status: Blue (running) or Green (solved) | |
| #### 2. Rewards Panel | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ โโโโโโโโโโโโโโฌโโโโโโโโโโโโโโ โ | |
| โ โ Total Rew. โ Last Step โ โ | |
| โ โ +2.340 โ -0.010 โ โ โ Large numbers | |
| โ โโโโโโโโโโโโโโดโโโโโโโโโโโโโโ โ | |
| โ โ | |
| โ Recent step rewards โ | |
| โ (newest โ oldest) โ | |
| โ โโโโฌโโโฌโโโฌโโโฌโโโฌโโโฌโโโฌโโโ โ | |
| โ โ+1โ-1โ+0โ-1โ+2โ-1โ+0โ-1โ โ โ Pill chips | |
| โ โโโโดโโโดโโโดโโโดโโโดโโโดโโโดโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Total: Large (1.8rem), green/red colored | |
| - Step: Medium (1.4rem), green/red/gray | |
| - Chips: Rounded pills, last 8 rewards | |
| - Colors: Green (+), Red (-), Gray (0) | |
| #### 3. Observation Panel | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ OBSERVATION โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ Players โ 1 โ โ | |
| โ โโโโโโโโโโโโดโโโโโโโโโโโโโโโโค โ | |
| โ โ Agent Posโ [[3,4]] โ โ โ Monospace | |
| โ โโโโโโโโโโโโดโโโโโโโโโโโโโโโโค โ | |
| โ โ Exit Pos โ [[6,7]] โ โ โ Monospace | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ ๐ฌ Moved LEFT. Step 12. โ โ โ Message | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Key-value pairs | |
| - Positions: Monospace font, blue color | |
| - Message: Icon + text, slides in | |
| #### 4. Move History | |
| ``` | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| โ MOVE HISTORY โ newest left โ | |
| โ (showing 10 of 10) โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โ โ โถ โฒ โฒ โถ โผ โ โฒ โถ ... โ โ โ Horizontal scroll | |
| โ โโโโโโโโโโโโโโโโโโโโโโโโโโ โ | |
| โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| ``` | |
| - Horizontal scroll strip | |
| - Last 30 moves shown | |
| - Arrow icons: โฒ โผ โ โถ | |
| - Recent moves: Bright blue | |
| - Old moves: Muted gray | |
| --- | |
| ## ๐จ Color Palette | |
| ### Background Colors | |
| ``` | |
| Deep: #0d1525 โโโ Darkest background | |
| BG1: #111827 โโโ Primary background | |
| BG2: #151e2e โโโ Secondary background | |
| Panel: #1a2438 โโโ Card backgrounds | |
| Panel Mid: #1e2a40 โโโ Gradient mid-point | |
| Panel Inset:#0f1929 โโโ Inset areas | |
| ``` | |
| ### Border & Line Colors | |
| ``` | |
| Line: #2a3a52 โโโ Primary borders | |
| Line Soft: #1e2d42 โโโ Subtle borders | |
| ``` | |
| ### Text Colors | |
| ``` | |
| Text: #c8daf0 โโโ Body text | |
| Text Head: #e2eeff โโโ Headings | |
| Muted: #4a6080 โโโ Secondary text | |
| ``` | |
| ### Accent Colors | |
| ``` | |
| Blue: #38bdf8 โโโ Primary actions | |
| Blue Bright:#0ea5e9 โโโ Buttons | |
| Blue Dim: #1e6fa8 โโโ Hover states | |
| Green: #10b981 โโโ Positive/Success | |
| Green Dim: #065f46 โโโ Green tints | |
| Red: #f87171 โโโ Negative/Error | |
| Amber: #f59e0b โโโ Warning | |
| Purple: #a78bfa โโโ Special states | |
| ``` | |
| ## ๐ญ Visual Effects | |
| ### Shadows | |
| ```css | |
| --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.45); /* Cards */ | |
| --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.3); /* Header */ | |
| --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.2); /* Buttons */ | |
| ``` | |
| ### Gradients | |
| ```css | |
| /* Card backgrounds */ | |
| linear-gradient(180deg, #1a2438 0%, #1e2a40 100%) | |
| /* Button backgrounds */ | |
| linear-gradient(180deg, #1e2a40, #0f1929) | |
| /* Primary button */ | |
| linear-gradient(135deg, #0ea5e9, #1e6fa8) | |
| /* Wall cells */ | |
| linear-gradient(135deg, #2563a8, #1a4a80) | |
| /* Exit cells */ | |
| linear-gradient(180deg, #0a2a1e, #052016) | |
| /* Solved banner */ | |
| linear-gradient(135deg, #10b981, #059669) | |
| ``` | |
| ### Animations | |
| ```css | |
| /* Board appearance */ | |
| @keyframes fadeIn { | |
| from { opacity: 0; transform: scale(0.95); } | |
| to { opacity: 1; transform: scale(1); } | |
| } | |
| /* Exit marker pulse */ | |
| @keyframes pulse { | |
| 0%, 100% { opacity: 1; transform: rotate(45deg) scale(1); } | |
| 50% { opacity: 0.7; transform: rotate(45deg) scale(0.95); } | |
| } | |
| /* Agent glow */ | |
| @keyframes glow { | |
| 0%, 100% { box-shadow: 0 0 16px rgba(47,143,255,0.6); } | |
| 50% { box-shadow: 0 0 24px rgba(47,143,255,0.8); } | |
| } | |
| /* Solved celebration */ | |
| @keyframes celebrate { | |
| 0% { transform: scale(0.8) rotate(-5deg); } | |
| 50% { transform: scale(1.1) rotate(5deg); } | |
| 100% { transform: scale(1) rotate(0deg); } | |
| } | |
| ``` | |
| ### Hover Effects | |
| ```css | |
| /* Buttons lift on hover */ | |
| :hover { | |
| transform: translateY(-2px); | |
| box-shadow: 0 6px 20px rgba(0,0,0,0.4); | |
| } | |
| /* Active state scales down */ | |
| :active { | |
| transform: scale(0.95); | |
| } | |
| ``` | |
| ## ๐ฑ Responsive Breakpoints | |
| ```css | |
| /* Desktop (default) */ | |
| @media (min-width: 1400px) { | |
| .mz-container { grid-template-columns: 320px 1fr 380px; } | |
| } | |
| /* Medium screens */ | |
| @media (max-width: 1400px) { | |
| .mz-container { grid-template-columns: 280px 1fr 340px; } | |
| } | |
| /* Mobile/Tablet */ | |
| @media (max-width: 1024px) { | |
| .mz-container { grid-template-columns: 1fr; } | |
| /* Stacks panels vertically */ | |
| } | |
| /* Small mobile */ | |
| @media (max-width: 768px) { | |
| .mz-title { font-size: 1.8rem; } | |
| .board-cell { width: 40px; height: 40px; } | |
| } | |
| ``` | |
| ## ๐ฏ Interactive States | |
| ### Button States | |
| 1. **Default**: Gradient background, subtle shadow | |
| 2. **Hover**: Lifts up 2px, stronger shadow, blue border | |
| 3. **Active**: Scales down to 0.95, immediate feedback | |
| 4. **Disabled**: 50% opacity, no pointer events | |
| ### Cell States | |
| - **Wall**: Static, inset shadow | |
| - **Path**: Static | |
| - **Exit**: Pulsing diamond animation (2s loop) | |
| - **Agent**: Glowing orb animation (1.5s loop) | |
| ### Status Messages | |
| - **Success**: โ Green checkmark | |
| - **Action**: ๐ฎ Game controller | |
| - **Info**: โน๏ธ Information | |
| - **Error**: โ Red X | |
| - **Loading**: โก Lightning bolt | |
| ## ๐ฑ๏ธ Interaction Feedback | |
| ### Visual Feedback Timeline | |
| ``` | |
| Click Button | |
| โ (0ms) | |
| Button scales down (transform: scale(0.95)) | |
| โ (10ms) | |
| API call initiated | |
| โ (150ms) | |
| Button disabled (opacity: 0.5) | |
| โ (200-500ms) | |
| API response received | |
| โ (0ms) | |
| Board updates (fade in animation) | |
| Stats update (instant) | |
| Rewards update (instant) | |
| History updates (slide in) | |
| โ (300ms) | |
| Button re-enabled | |
| Animation complete | |
| ``` | |
| ### Loading States | |
| ``` | |
| Action Initiated | |
| โ | |
| Loading overlay appears (backdrop blur) | |
| Spinner starts rotating | |
| Buttons disabled | |
| โ | |
| Action completes | |
| โ | |
| Loading overlay fades out | |
| Buttons re-enabled | |
| Status updated | |
| ``` | |
| --- | |
| ## ๐ Typography Scale | |
| ``` | |
| Title: 2.5rem / 900 weight โ๏ธ MAZE BENCH ENVIRONMENT | |
| Subtitle: 0.9rem / 700 weight ICE SLIDING PUZZLE | |
| Section: 1rem / 900 weight TELEMETRY | |
| Section Small: 0.75rem / 900 weight LIVE STATS | |
| Reward Total: 1.8rem / 900 weight +2.340 | |
| Reward Step: 1.4rem / 900 weight -0.010 | |
| Stat Value: 1.1rem / 800 weight 12/50 | |
| Body: 0.85rem / 700 weight Regular text | |
| Small: 0.7rem / 700 weight Hints, labels | |
| Tiny: 0.65rem / 900 weight UPPERCASE LABELS | |
| ``` | |
| --- | |
| This visual guide describes the complete layout and design system of the MazeBench custom frontend. Every element has been carefully crafted for optimal user experience and aesthetic appeal. | |