Introduce a working v0 Nebula Shell prototype (Tauri frontend) and redesign docs. Adds a complete frontend under src/ (views: home, lock, library, settings, overlays), core adapters (input, nav, passkey, router, state), global styles and shell guidelines, and view-specific HTML/CSS/JS. Update README with prototype notes, install/run/build instructions and controller testing tips. Update package.json to add dev/build scripts and add @nebulaproject/core as a dependency. Also include a detailed REDESIGN_DOCUMENTATION.md describing the Xbox-inspired horizontal dashboard, component patterns, and developer notes.
9.9 KiB
Nebula OS - Xbox Series X Inspired Redesign Documentation
Overview
Nebula OS has been redesigned with inspiration from the Xbox Series X dashboard while maintaining its unique space-themed identity. The result is a horizontal, content-first dashboard with large tiles, smooth motion, layered depth, and a premium, console-native feel.
Core Layout Changes
1. Home Dashboard Structure
- Layout: Left-aligned horizontal tile grid with smooth scrolling
- Tiles: 4 primary apps (Library, Browser, Settings, Power)
- Navigation: Horizontal controller input (left/right) with smooth transitions
- Focus Effects:
- Tiles scale to 1.06x on focus
- Cyan glow and accent bar appears on focused tile
- Smooth parallax depth between layers
2. Dynamic Background System
The background now features multiple animated layers for depth and immersion:
Gradient Layer
- Deep navy → midnight blue → subtle purple gradient
- Animated drift with rotation for dynamic feel
- Duration: 28s
- Multiple radial gradients for light sources
Starfield Layer
- Three layers of stars with varying sizes and colors
- Creates sense of depth and space
- Slow parallax movement
- Duration: 45s linear
Fog Layer
- Soft drifting nebula clouds
- Heavy blur (52px) for ethereal effect
- Multiple elliptical gradients
- Duration: 34s
Vignette Layer
- Subtle darkening at edges
- Focuses attention on center content
- Static overlay
3. Top Bar (Nebula Style)
- Left: "Nebula OS" brand with cyan glow effect
- Right: User avatar (with glow) + system time
- Accent Line: Animated line that moves with focus
- Structure: Flexbox with
.shell-topbar-contentwrapper
4. Tile Design
Tiles now feature Xbox-inspired rectangular design with depth:
Visual Layers
- Background: Layered gradient with soft radial accent
- Content: Icon, title, and subtitle flexbox layout
- Accent Bar: Bottom highlight that animates on focus
- Hover Glow: Radial gradient overlay on focus
On Focus Effects
- Scale: 1.06x transform
- Border: Cyan outline with glow
- Shadow: Enhanced depth shadow
- Text: Subtle translateX(3px) animation
- Icon: Scale 1.08 + translateY(-2px)
5. Controller Navigation Feedback
- Focus Transitions: 180ms smooth animations
- Movement: Animated position changes, not instant jumps
- Press Animation: Scale down to 0.96 then back
- Easing: Custom console-style cubic-bezier curves
- Sound Hooks: Structure in place for UI audio (not implemented)
6. Lock Screen Redesign
A more immersive authentication experience:
Time Display
- Large gradient-filled text (96-160px)
- Cyan glow shadow
- Modern weight (760)
- Gradient from white to light blue
PIN Keypad
- Design: Circular buttons (50% border-radius)
- Size: Aspect ratio 1:1, min 92px
- Material: Radial gradient with inner/outer shadows
- Focus: Scale 1.08 with cyan border and glow
- Press: Scale 0.95 feedback
PIN Dots
- Larger design (18px)
- Cyan border that fills on input
- Glowing effect when filled
7. Settings Page Redesign
Horizontal category navigation with card-based content:
Category Bar
- Horizontal list at top
- Active category gets:
- Color change to cyan
- Bottom accent bar with glow
- Scale animation
- Smooth underline animation
Content Panel
- Large panel with layered background
- Card-based settings layout
- Responsive grid (auto-fit)
- Cards scale 1.04x on focus
8. Animation Style
All animations follow these principles:
Easing Functions
--nebula-ease-standard: cubic-bezier(0.25, 0.1, 0.25, 1)
--nebula-ease-console: cubic-bezier(0.19, 0.82, 0.18, 1)
--nebula-ease-snap: cubic-bezier(0.32, 0.94, 0.18, 1)
Timing
- Fast: 120ms (micro-interactions)
- Nav: 180ms (focus transitions)
- Slow: 340ms (page transitions)
Performance
- Use
transforminstead of position changes - Avoid heavy shadow stacking
- GPU-accelerated with
translateZ(0) will-changeon focusable elements
Component Breakdown
TopBar Component
Location: .shell-topbar
Structure:
<header class="shell-topbar">
<div class="shell-topbar-content">
<p class="shell-brand">Nebula OS</p>
<div class="shell-status">
<span class="shell-avatar"></span>
<p class="shell-time"></p>
</div>
</div>
<div class="shell-accent-line"></div>
</header>
Features:
- Brand glow effect
- Avatar with cyan border glow
- Animated accent line that follows focus
- Responsive layout
TileRow Component
Location: .tile-rail
Structure:
<section class="tile-rail" data-focus-root>
<!-- Tiles go here -->
</section>
Features:
- Horizontal scroll with hidden scrollbar
- Smooth scroll behavior
- Parallax transform on navigation
- Flexible gap spacing
Tile Component
Location: .tile.dashboard-tile
Variants:
.tile-large- Larger featured tile- Standard - Default size
Structure:
<button class="focusable tile dashboard-tile">
<div class="tile-content">
<span class="tile-icon">📚</span>
<div class="tile-text">
<p class="tile-label">Title</p>
<p class="tile-meta">Subtitle</p>
</div>
</div>
<div class="tile-accent-bar"></div>
</button>
States:
- Default
.is-focused- Scale, glow, accent bar.is-pressed- Press animation
BackgroundLayer Component
Location: #nebula-background
Layers:
.nebula-layer.gradient- Base gradient.nebula-layer.starfield- Animated stars.nebula-layer.fog- Blurred nebula clouds.nebula-layer.vignette- Edge darkening
Features:
- Independent animations per layer
- Parallax on navigation
- Smooth transitions
FocusManager
Location: .focusable class
Features:
- Automatic border/shadow on focus
- Radial gradient ripple effect
- Press pulse animation
- Smooth transitions between states
States:
.is-focused- Cyan border, glow, scaled.is-pressed- Animation pulse
Design Language
Colors
- Accent: Nebula cyan (#4fd8ff)
- Background: Deep space blue (#050a17 → #1a1342)
- Text: Off-white (#f2f7ff)
- Muted: Light blue-gray (#a8bdd8)
Typography
- Modern, clean sans-serif (Segoe UI)
- Weights: 600-760 range for premium feel
- Sizes: Responsive with clamp()
- Spacing: Slightly bold for console readability
Depth & Layers
- Multiple shadow layers on focus
- Inset shadows for inner depth
- Gradient overlays for material feel
- Backdrop blur for depth separation
Premium Feel
- No flat design - everything has depth
- Smooth animations throughout
- Glow effects on accents
- Inner/outer shadows for dimensions
Files Modified
View Files
src/views/home/home.htmlsrc/views/home/home.jssrc/views/home/home.csssrc/views/lock/lock.htmlsrc/views/lock/lock.jssrc/views/lock/lock.csssrc/views/settings/settings.htmlsrc/views/settings/settings.jssrc/views/settings/settings.csssrc/views/library/library.htmlsrc/views/library/library.js
Core Style Files
src/styles/theme.css- Design tokenssrc/styles/base.css- Background, topbar, animationssrc/styles/components.css- Tiles, focus system
Navigation Grid Changes
Home View
- Changed from 3 columns to 4 columns
- Added Browser tile
- Updated tile sizing for better proportions
Settings View
- 5 horizontal categories (Network, Audio, Display, Storage, System)
- Card grid with auto-fit responsive layout
- 2-row navigation (categories + cards)
Lock Screen
- 4x3 keypad grid
- Circular button design
- Center-focused layout
Performance Optimizations
- Transform-based animations - No layout recalculation
- will-change hints - GPU acceleration where needed
- Selective backdrop-filter - Only on depth blur layer
- CSS containment - Component isolation
- Efficient selectors - Class-based, minimal nesting
Future Enhancements
Audio System
Structure is in place for UI sound hooks:
- Focus change sounds
- Press/click sounds
- Navigation swoosh
- Error/success tones
Additional Animations
- Page slide transitions between views
- Content fade-in on load
- Tile stagger animations on home view entry
Advanced Features
- Dynamic tile backgrounds (game art)
- Video backgrounds for featured content
- Achievement/notification popups
- Quick resume tiles with screenshots
Console-First Design Principles
- Large hit targets - Easy to navigate with controller
- Clear focus states - Always visible what's selected
- Smooth motion - No jarring transitions
- Depth perception - Layered UI for spatial understanding
- Content first - Minimal chrome, maximum content
- Premium materials - Glows, shadows, gradients for quality feel
Developer Notes
Adding New Tiles
- Add button to
.tile-railin home.js - Update
data-rowanddata-colattributes - Update navigation contract cols count
- Ensure proper
data-targetattribute
Adding New Settings Categories
- Add button to
.settings-category-bar - Add to CATEGORIES object in settings.js
- Update navigation contract
- Create category content panel
Customizing Animations
All animation timings are in CSS variables in theme.css:
--nebula-duration-fast--nebula-duration-nav--nebula-duration-slow
Easing curves are also variables:
--nebula-ease-standard--nebula-ease-console--nebula-ease-snap
Conclusion
The redesign transforms Nebula OS into a premium, console-first experience that feels fast, immersive, and modern. The Xbox Series X dashboard inspiration is clear in the horizontal layout, large tiles, and smooth animations, while the space-themed "Nebula" identity is maintained through the cyan accent colors, starfield backgrounds, and cosmic naming.
Result: "Xbox Series X dashboard reimagined for a space-themed, controller-first OS." ✨