- Clone the repository
- Run
yarn installto install dependencies - Make modifications to the theme in the
packages/eui-theme-hacker/srcdirectory - Run
yarn buildto build the theme - Run
yarn devto start the development server - Visit
http://localhost:5173to see the demo application
More information about the project is in progress...
eui-theme-hacker/
├── packages/
│ └── eui-theme-hacker/ # Theme package (published to npm)
│ ├── src/
│ │ ├── variables/ # EUI theme tokens
│ │ │ ├── colors/ # Color definitions
│ │ │ │ ├── _primitive_colors.ts # Raw color values (greens, purples, etc.)
│ │ │ │ ├── _semantic_colors.ts # Semantic mappings (primary, danger, etc.)
│ │ │ │ ├── _colors_dark.ts # Dark mode color palette
│ │ │ │ ├── _colors_light.ts # Light mode color palette
│ │ │ │ ├── _colors_vis.ts # Data visualization colors
│ │ │ │ └── _colors_severity.ts # Severity/status colors
│ │ │ ├── _animation.ts # Animation timing and easing
│ │ │ ├── _borders.ts # Border radius and styles
│ │ │ ├── _breakpoint.ts # Responsive breakpoints
│ │ │ ├── _buttons.ts # Button-specific tokens
│ │ │ ├── _components.ts # Component-level overrides
│ │ │ ├── _focus.ts # Focus ring styles
│ │ │ ├── _forms.ts # Form element tokens
│ │ │ ├── _levels.ts # Z-index levels
│ │ │ ├── _shadows.ts # Box shadow definitions
│ │ │ ├── _size.ts # Spacing scale
│ │ │ └── _typography.ts # Font families and scales
│ │ ├── global/
│ │ │ └── effects.ts # CSS-in-JS utilities (glowText, scanlines, etc.)
│ │ └── index.ts # Package exports
│ └── lib/ # Build output
│ ├── esm/ # ES modules build
│ └── cjs/ # CommonJS build
│
├── demo/ # Interactive demo application
│ ├── components/
│ │ ├── Layout.tsx # Main app shell with header and nav
│ │ ├── DynamicStyles.tsx # Runtime style toggling for demos
│ │ └── SettingsPanel.tsx # Theme customization panel
│ ├── context/
│ │ ├── DemoSettingsContext.tsx # React context for demo state
│ │ └── types.ts # TypeScript types for settings
│ ├── hooks/
│ │ ├── useBreadcrumbs.ts # Navigation breadcrumb generation
│ │ ├── useDemoSettings.ts # Access demo settings context
│ │ └── useThemeStyles.ts # Theme-aware style utilities
│ ├── pages/
│ │ ├── Home.tsx # Landing page with theme overview
│ │ ├── ColorPalette.tsx # Interactive color explorer
│ │ ├── TokenInspector.tsx # Browse all 500+ theme tokens
│ │ ├── Typography.tsx # Font family and scale demos
│ │ ├── Animations.tsx # CRT effects playground
│ │ ├── ComponentShowcase.tsx # EUI components with theme
│ │ ├── Dashboard.tsx # Example dashboard layout
│ │ └── DataTable.tsx # Example data table
│ ├── types/
│ │ └── declarations.d.ts # TypeScript declarations
│ ├── App.tsx # Route definitions
│ ├── main.tsx # React entry point
│ └── vite.config.ts # Vite configuration
│
└── package.json # Workspace root