ui-design-styling

ryOS UI Design & Styling

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ui-design-styling" with this command: npx skills add ryokun6/ryos/ryokun6-ryos-ui-design-styling

ryOS UI Design & Styling

The 4 Themes

Theme ID Key Traits

System 7 system7

Black/white, square corners, Chicago font, dotted patterns

macOS Aqua macosx

Pinstripes, traffic lights, glossy buttons, Lucida Grande

Windows XP xp

Blue gradients, Luna style, soft shadows, Tahoma

Windows 98 win98

Gray 3D bevels, classic blue title bars, MS Sans Serif

Essential Utilities

import { cn } from "@/lib/utils"; import { useTheme } from "@/contexts/ThemeContext";

const { osTheme } = useTheme();

// Theme-conditional classes className={cn( "base-classes", osTheme === "macosx" && "aqua-specific", osTheme === "system7" && "system7-specific" )}

OS-Aware Tailwind Classes

className="bg-os-window-bg" // Window background className="border-os-window" // Window border className="rounded-os" // Theme-appropriate radius className="font-os-ui" // UI font stack className="font-os-mono" // Monospace font className="shadow-os-window" // Window shadow className="h-os-titlebar" // Title bar height

CSS Variables

Access via var(--name) :

--os-font-ui, --os-font-mono --os-color-window-bg, --os-color-window-border --os-color-titlebar-active-bg, --os-color-titlebar-inactive-bg --os-color-button-face, --os-color-button-highlight, --os-color-button-shadow --os-color-selection-bg, --os-color-selection-text --os-metrics-border-width, --os-metrics-radius --os-metrics-titlebar-height, --os-metrics-menubar-height

Theme-Specific Styling

System 7

<div className={cn( "border-2 border-black bg-white rounded-none", "font-chicago text-black", "shadow-[2px_2px_0px_0px_rgba(0,0,0,0.5)]" )}>

macOS Aqua

<div className={cn( "bg-[#E8E8E8] border border-black/30", "rounded-lg font-lucida-grande", "shadow-[0_3px_10px_rgba(0,0,0,0.3)]" )}> <button className="aqua-button primary">OK</button> </div>

Windows XP

<div className={cn( "bg-[#ECE9D8] border-[3px] border-[#0054E3]", "rounded-[0.5rem] font-tahoma", "shadow-[0_4px_8px_rgba(0,0,0,0.25)]" )}>

Windows 98

<div className={cn( "bg-[#C0C0C0] border-2 rounded-none font-ms-sans-serif", "border-t-white border-l-white", "border-b-[#808080] border-r-[#808080]" )}>

Theme Specifications

System 7 (system7 )

Property Value

Fonts Chicago, Monaco (mono)

Window BG #FFFFFF

Border 2px solid #000000

Radius 0px

Selection Black bg, white text

Shadow 2px 2px 0px 0px rgba(0,0,0,0.5)

macOS Aqua (macosx )

Property Value

Fonts Lucida Grande, Monaco (mono)

Window BG #E8E8E8

Border 0.5px solid rgba(0,0,0,0.3)

Radius 0.45rem (8px)

Selection #3875D7 bg, white text

Shadow 0 3px 10px rgba(0,0,0,0.3)

Traffic Lights Red #FF5F57 , Yellow #FEBC2E , Green #28C840

Windows XP (xp )

Property Value

Fonts Tahoma, Consolas (mono)

Window BG #ECE9D8

Border 3px solid #0054E3

Radius 0.5rem (8px)

Selection #316AC5 bg, white text

Shadow 0 4px 8px rgba(0,0,0,0.25)

Title Bar Blue gradient #0A246A → #0054E3

Windows 98 (win98 )

Property Value

Fonts MS Sans Serif, Fixedsys (mono)

Window BG #C0C0C0

Raised Bevel border: 2px solid; border-color: #FFF #808080 #808080 #FFF

Sunken Bevel border: 2px solid; border-color: #808080 #FFF #FFF #808080

Radius 0px

Selection #000080 bg, white text

Title Bar Gradient #000080 → #1084D0

Component Patterns

Theme-Adaptive Button

import { Button } from "@/components/ui/button";

<Button variant="default">Standard</Button> <Button variant="retro">Retro Style</Button> <Button variant="aqua">Aqua (macOS)</Button>

Aqua Buttons (CSS classes)

<button className="aqua-button">Default</button> <button className="aqua-button primary">Primary (pulsing)</button> <button className="aqua-button secondary">Secondary</button>

Win98 3D Button

<button className={cn( "px-4 py-1 bg-[#C0C0C0]", "border-2 border-t-white border-l-white", "border-b-[#808080] border-r-[#808080]", "active:border-t-[#808080] active:border-l-[#808080]", "active:border-b-white active:border-r-white" )}>

Glassmorphism

<div className="bg-white/80 backdrop-blur-lg rounded-lg"> <div className="bg-black/40 backdrop-blur-xl text-white">

Theme-Aware Panel

<div className={cn( "p-4 bg-os-window-bg border-os-window rounded-os", osTheme === "system7" && "border-2 border-black", osTheme === "macosx" && "shadow-md", osTheme === "win98" && "border-2 border-t-white border-l-white border-b-[#808080] border-r-[#808080]" )}>

Custom Components

Component Usage

AudioBars

Frequency visualization

PlaybackBars

Equalizer animation

VolumeBar

Horizontal volume indicator

Dial

Circular dial control (sm/md/lg)

RightClickMenu

Context menu wrapper

Dial Example

import { Dial } from "@/components/ui/dial"; <Dial value={50} onChange={setValue} size="md" label="Volume" />

Window Materials

Mode Use Case

default

Standard opaque windows

transparent

Semi-transparent (iPod, Photo Booth)

notitlebar

Immersive with floating controls (Videos)

Best Practices

  • Always search for existing patterns before creating new styles or components

  • Always use cn() for conditional class merging

  • Use OS-aware classes (bg-os-* , border-os-* ) when available

  • Check theme with useTheme() for complex conditional rendering

  • Prefer CSS variables over hardcoded colors

  • Test all 4 themes when adding styled components x

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

update-docs

No summary provided by upstream source.

Repository SourceNeeds Review
General

localize

No summary provided by upstream source.

Repository SourceNeeds Review
General

create-ryos-app

No summary provided by upstream source.

Repository SourceNeeds Review