Guides
UI & Design Guidelines
Design system, dark theme, Tailwind CSS, responsive iframe layout, and accessibility guidelines for Insolitum Universe modules.
UI & Design Guidelines
Modules should provide a consistent visual experience within the Universe Shell. Follow these guidelines for a cohesive look.
Dark Theme
Universe Shell uses a dark theme by default. Your module must support dark mode:
Color Palette
| Token | Value | Usage |
|---|---|---|
bg-gray-900 | #111827 | Page background |
bg-gray-800 | #1f2937 | Card / panel background |
bg-gray-800/50 | semi-transparent | Elevated surfaces |
border-gray-700 | #374151 | Borders, dividers |
text-white | #ffffff | Primary text |
text-gray-400 | #9ca3af | Secondary text |
text-gray-500 | #6b7280 | Muted text |
Accent Colors
Use these for interactive elements and status indicators:
| Color | Class | Usage |
|---|---|---|
| Purple | text-purple-400 / bg-purple-500 | Primary actions, branding |
| Blue | text-blue-400 / bg-blue-500 | Links, info |
| Green | text-green-400 / bg-green-500 | Success, active |
| Yellow | text-yellow-400 / bg-yellow-500 | Warnings |
| Red | text-red-400 / bg-red-500 | Errors, destructive |
| Cyan | text-cyan-400 / bg-cyan-500 | Telemetry, data |
Tailwind CSS
The module-starter uses Tailwind CSS v3.4 with these defaults:
Layout Patterns
Card Layout
Stats Grid
Page Header
Icons
Use Lucide React for icons (included in module-starter):
Responsive Design
Your module renders inside an iframe. The available width depends on the Shell's layout (sidebar open/closed). Design for:
- Minimum width: 768px (sidebar open on desktop)
- Maximum width: 100% of viewport minus sidebar
- Mobile: Shell may hide sidebar, giving full width
Use Tailwind responsive prefixes: sm:, md:, lg:.
Internationalization (i18n)
Modules should support at minimum Polish and English:
Accessibility Checklist
- Use semantic HTML elements (
<main>,<nav>,<section>) - All images have
altattributes - Interactive elements are keyboard-accessible
- Color contrast ratio >= 4.5:1 for text
- Focus states are visible
- Form inputs have labels