Roman cyber garage
Dark cyberpunk design system with complete theme reference — colors, typography, components, modals, tables, cards, badges, buttons, and layout patterns. Use this skill when building dark-themed dashboards, admin panels, trading UIs, or any cyberpunk-aesthetic web interface. Production-tested on real SaaS products.From its SKILL.md
npx -y skills add roman-rr/roman-cyber-garageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as Complete terms in LICENSE.txt. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
13.6 KB, ~4.7k tokens by cl100k_base, as published. Nobody here has run it
Roman Cyber Garage
A production-tested dark cyberpunk design system extracted from a live SaaS trading platform. Provides exact design tokens, component CSS, and layout patterns for building visually consistent, professional dark-themed web UIs.
The user provides a frontend task — a page, component, modal, dashboard, or UI element to build. Apply the design system below to produce pixel-consistent output matching the cyberpunk aesthetic.
Fonts
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500;700&display=swap" rel="stylesheet">
| Usage | Font | Weight | Size |
|---|---|---|---|
| Body text | Inter | 400 | 14px |
| Headings | Inter | 600-700 | 18-36px |
| Code / Data / Labels | JetBrains Mono | 400-700 | 11-13px |
| Nav brand | JetBrains Mono | 700 | 16-18px |
| Section titles | JetBrains Mono | 600 | 12px uppercase letter-spacing: 0.1em |
| Badges / Buttons | JetBrains Mono | 500-700 | 11-12px |
| Big metric values | JetBrains Mono | 700 | 24-32px |
Color Palette
Backgrounds
| Token | Value | Usage |
|---|---|---|
--bg-body | #030710 | Page background |
--bg-nav | rgba(3,7,16,0.85) | Nav (+ backdrop-filter: blur(16px)) |
--bg-card | rgba(127,200,255,0.02) | Cards, sections |
--bg-card-hover | rgba(127,200,255,0.06) | Card/row hover |
--bg-modal | #0d1117 | Modal body |
--bg-modal-alt | #0a0f1e | Alt modal body |
--bg-input | #0a0e1a | Inputs, selects |
--bg-panel | #161b22 | Inset panels |
--bg-overlay | rgba(0,0,0,0.75) | Modal overlay (+ backdrop-filter: blur(6px)) |
Text
| Token | Value | Usage |
|---|---|---|
--text-primary | #e2e8f0 | Body text |
--text-secondary | #c8d6e5 | Table cells |
--text-muted | #6b8299 | Labels, subtitles |
--text-dim | #4a6278 | Hints, fine print |
--text-dimmer | #3d4f63 | Footer notes |
Accents
| Token | Value | Usage |
|---|---|---|
--accent-blue | #7fc8ff | Primary — links, values, brand |
--accent-gold | #facc15 | Admin — titles, active states |
Semantic / Status Colors
| Token | Value | Usage |
|---|---|---|
--color-success | #4ade80 | Green — success, bullish, profit, ON |
--color-warning | #facc15 | Yellow — partial, caution |
--color-warning-amber | #f59e0b | Amber — alerts |
--color-danger | #f87171 | Red — failed, bearish, loss, OFF |
--color-info | #7fc8ff | Blue — pending |
--color-purple | #c084fc | Purple — features |
--color-cyan | #06b6d4 | Cyan — secondary features |
--color-sky | #38bdf8 | Sky blue — tertiary |
--color-teal | #34d399 | Teal — accents |
--color-emerald | #10b981 | Emerald — positive accents |
--color-rose | #f43f5e | Rose — alerts |
--color-indigo | #6366f1 | Indigo — gradients |
Border Opacity Scale
| Level | Value | Usage |
|---|---|---|
| subtle | rgba(127,200,255,0.06) | Cards, sections |
| light | rgba(127,200,255,0.08) | Table headers |
| medium | rgba(127,200,255,0.12) | Modals |
| strong | rgba(127,200,255,0.15) | Buttons, inputs |
| glow | rgba(127,200,255,0.3) | Hover states |
Neon Top Line
Every page starts with a fixed 2px neon gradient:
.neon-line {
position: fixed; top: 0; left: 0; right: 0; height: 2px; z-index: 101;
background: linear-gradient(90deg, transparent, #1E88E5 20%, #42A5F5 80%, transparent);
}
Components
Nav Bar
.nav {
position: fixed; top: 2px; left: 0; right: 0; z-index: 100;
backdrop-filter: blur(16px); background: rgba(3,7,16,0.85);
border-bottom: 1px solid rgba(127,200,255,0.06);
padding: 0 24px; height: 56px;
display: flex; align-items: center; justify-content: space-between;
}
.nav-brand {
font-family: 'JetBrains Mono', monospace; font-weight: 700;
font-size: 18px; color: #7fc8ff; letter-spacing: 2px; text-decoration: none;
}
.nav-links { display: flex; gap: 16px; }
.nav-links a { font-size: 14px; color: #6b8299; text-decoration: none; transition: color 0.2s; }
.nav-links a:hover, .nav-links a.active { color: #7fc8ff; }
Page Layout
.container { max-width: 1200px; margin: 0 auto; padding: 80px 20px 40px; }
.page-title {
font-family: 'JetBrains Mono', monospace; font-size: clamp(24px, 4vw, 36px);
font-weight: 700; margin-bottom: 8px;
background: linear-gradient(135deg, #7fc8ff, #a78bfa);
-webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.page-subtitle { color: #6b8299; font-size: 14px; margin-bottom: 24px; }
Summary Card
.summary-card {
background: rgba(127,200,255,0.02); border: 1px solid rgba(127,200,255,0.06);
border-radius: 12px; padding: 20px; transition: border-color 0.3s;
}
.summary-card:hover { border-color: rgba(127,200,255,0.15); }
.summary-label {
font-family: 'JetBrains Mono', monospace; font-size: 11px;
text-transform: uppercase; letter-spacing: 0.1em; color: #6b8299; margin-bottom: 8px;
}
.summary-value {
font-family: 'JetBrains Mono', monospace; font-size: 32px; font-weight: 700;
color: #7fc8ff; text-shadow: 0 0 30px rgba(127,200,255,0.15);
}
.summary-value.green { color: #4ade80; text-shadow: 0 0 30px rgba(74,222,128,0.15); }
.summary-value.red { color: #f87171; }
Content Card / Chart Section
.chart-section {
background: rgba(127,200,255,0.02); border: 1px solid rgba(127,200,255,0.06);
border-radius: 12px; padding: 24px; margin-bottom: 32px;
}
.section-title {
font-family: 'JetBrains Mono', monospace; font-size: 12px;
text-transform: uppercase; letter-spacing: 0.1em; color: #7fc8ff; margin-bottom: 16px;
}
Data Table
.data-table { width: 100%; border-collapse: collapse; }
.data-table th {
font-family: 'JetBrains Mono', monospace; font-size: 11px;
text-transform: uppercase; letter-spacing: 0.05em; color: #6b8299;
padding: 12px 8px; text-align: left; border-bottom: 1px solid rgba(127,200,255,0.08);
}
.data-table td {
font-family: 'JetBrains Mono', monospace; font-size: 13px;
padding: 12px 8px; color: #c8d6e5; border-bottom: 1px solid rgba(127,200,255,0.04);
}
.data-table tr:hover td { background: rgba(127,200,255,0.02); }
Badges
.badge {
display: inline-block; padding: 3px 10px; border-radius: 6px;
font-size: 11px; font-weight: 600; font-family: 'JetBrains Mono', monospace;
}
.badge-success { background: rgba(34,197,94,0.15); color: #4ade80; }
.badge-danger { background: rgba(239,68,68,0.15); color: #f87171; }
.badge-warning { background: rgba(234,179,8,0.15); color: #facc15; }
.badge-info { background: rgba(127,200,255,0.1); color: #7fc8ff; }
.badge-muted { background: rgba(107,130,153,0.15); color: #6b8299; }
Buttons — Tab Switcher
.tab-btn {
background: rgba(127,200,255,0.04); border: 1px solid rgba(127,200,255,0.08);
color: #6b8299; padding: 7px 16px; border-radius: 6px;
font-family: 'JetBrains Mono', monospace; font-size: 11px;
cursor: pointer; transition: all 0.2s;
}
.tab-btn:hover { border-color: rgba(127,200,255,0.2); color: #e2e8f0; }
.tab-btn.active { background: rgba(127,200,255,0.1); border-color: #7fc8ff; color: #7fc8ff; }
Buttons — Color-Coded Action
Replace COLOR_RGB and COLOR_HEX with any semantic color:
.action-btn {
background: rgba(COLOR_RGB, 0.1); border: 1px solid rgba(COLOR_RGB, 0.25);
color: COLOR_HEX; padding: 6px 16px; border-radius: 6px;
font-size: 12px; font-family: 'JetBrains Mono', monospace;
cursor: pointer; transition: all 0.15s;
}
.action-btn:hover { background: rgba(COLOR_RGB, 0.2); }
Buttons — Toggle (ON/OFF)
.toggle-btn {
padding: 4px 14px; border-radius: 6px; font-size: 11px; font-weight: 700;
font-family: 'JetBrains Mono', monospace; border: 1px solid rgba(127,200,255,0.15);
cursor: pointer; transition: all 0.15s; min-width: 50px; text-align: center;
}
.toggle-btn.on { background: rgba(74,222,128,0.15); color: #4ade80; border-color: rgba(74,222,128,0.3); }
.toggle-btn.off { background: rgba(248,113,113,0.1); color: #f87171; border-color: rgba(248,113,113,0.2); }
Buttons — CTA
.btn-cta {
padding: 10px 24px; border-radius: 10px; border: none;
background: linear-gradient(135deg, #3b82f6, #6366f1);
color: #fff; font-size: 14px; font-weight: 500; cursor: pointer;
}
.btn-outline {
padding: 10px 24px; border-radius: 10px;
background: rgba(127,200,255,0.08); color: #7fc8ff;
border: 1px solid rgba(127,200,255,0.15);
font-family: 'JetBrains Mono', monospace; font-size: 13px; font-weight: 600;
cursor: pointer; transition: all 0.2s;
}
.btn-outline:hover { background: rgba(127,200,255,0.15); }
Modal
.modal-overlay {
display: none; position: fixed; inset: 0; z-index: 10000;
background: rgba(0,0,0,0.75); backdrop-filter: blur(6px);
align-items: flex-start; justify-content: center;
padding: 40px 20px; overflow-y: auto;
}
.modal-overlay.open { display: flex; }
.modal-body {
background: #0d1117; border: 1px solid rgba(ACCENT_RGB, 0.15);
border-radius: 14px; max-width: 640px; width: 100%;
padding: 24px; position: relative;
box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}
.modal-close {
position: absolute; top: 14px; right: 14px;
background: none; border: none; color: #6b8299;
font-size: 22px; cursor: pointer; padding: 4px 8px; line-height: 1;
}
.modal-title {
font-family: 'JetBrains Mono', monospace; font-size: 16px;
font-weight: 700; color: ACCENT_HEX;
}
Form Inputs
.form-input {
background: rgba(ACCENT_RGB, 0.06); border: 1px solid rgba(ACCENT_RGB, 0.15);
color: #e2e8f0; padding: 6px 10px; border-radius: 8px;
font-size: 12px; font-family: 'JetBrains Mono', monospace; outline: none;
}
.form-select {
background: #0a0e1a; color: #e2e8f0;
border: 1px solid rgba(127,200,255,0.15); border-radius: 8px;
padding: 6px 12px; font-family: 'JetBrains Mono', monospace; font-size: 12px;
}
Status Dots
.status-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; }
.status-dot.ok { background: #4ade80; box-shadow: 0 0 8px rgba(74,222,128,0.5); }
.status-dot.fail { background: #f87171; }
Alert Banners
.banner-error {
padding: 14px 18px; border-radius: 10px;
background: rgba(248,113,113,0.12); border: 1px solid rgba(248,113,113,0.4);
color: #f87171;
}
.banner-warn {
padding: 14px 18px; border-radius: 12px;
background: rgba(255,152,0,0.1); border: 1px solid rgba(255,152,0,0.25);
color: #ffb74d;
}
Glow Effects
/* Text glow */
text-shadow: 0 0 30px rgba(127,200,255,0.15);
/* Box glow on hover */
box-shadow: 0 0 20px rgba(127,200,255,0.06);
/* Modal shadow */
box-shadow: 0 20px 60px rgba(0,0,0,0.5), 0 0 40px rgba(127,200,255,0.05);
Layout Grids
| Pattern | CSS |
|---|---|
| Summary cards | grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px |
| 2-column | grid-template-columns: 1fr 1fr; gap: 16px |
| 3-column | grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 16px |
| Button row | display: flex; gap: 6-8px; flex-wrap: wrap |
Mobile (max-width: 768px)
@media (max-width: 768px) {
.container { padding: 72px 12px 24px; }
.summary-grid { grid-template-columns: repeat(2, 1fr); }
.summary-value { font-size: 24px; }
.chart-container { height: 220px; }
.hide-mobile { display: none; }
}
Page Skeleton
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PAGE_TITLE</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500;700&display=swap" rel="stylesheet">
<style>
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { background: #030710; color: #e2e8f0; font-family: 'Inter', sans-serif; min-height: 100vh; }
a { color: #7fc8ff; text-decoration: none; }
</style>
</head>
<body>
<div class="neon-line"></div>
<nav class="nav">
<a href="/" class="nav-brand">brand_</a>
<div class="nav-links">
<a href="/" class="active">PAGE_TITLE</a>
</div>
</nav>
<div class="container">
<h1 class="page-title">PAGE_TITLE</h1>
<p class="page-subtitle">Description</p>
</div>
</body>
</html>
Rules
JetBrains Monofor ALL data, numbers, labels, section titles, badges, buttons, codeInterfor body text, paragraphs, descriptions- NEVER use pure white
#fff— max is#e2e8f0 - NEVER use solid black borders — always
rgba(127,200,255,...)with low opacity - Cards/sections:
border-radius: 12px, 1px border - Modals:
border-radius: 14px, accent-colored border - Buttons:
border-radius: 6-8px - Background opacity:
0.02rest,0.04-0.06hover,0.1-0.15active - Border opacity:
0.06subtle,0.08-0.12normal,0.15-0.3prominent,0.5active - Each feature gets a unique accent color from the semantic palette
- Modals close on overlay click
backdrop-filter: blur()— nav 16-20px, modal overlays 4-8px- Always include the neon-line at top of every page
- Transition speeds:
0.15sbuttons,0.2slinks,0.3scards
What ships with it: 2 files
2.6 KB alongside SKILL.md
- LICENSE.txt672 B
- README.md1.9 KB
Gives 1 of the 12 instructions most design systems skills give in ~4.7k tokens
Counted across 528 of the 534 authors here whose files we hold, read 2026-08-07
- Create a custom theme if neededin 54 of 528, across 10 files
- Read the corresponding theme filein 54 of 528, across 10 files
- Ask which theme to applyin 53 of 528, across 9 files
- Show the theme showcasein 53 of 528, across 9 files
- Maintain visual identity across all slidesin 50 of 528, across 6 files
- Apply the specified colors and fontshere, and in 47 of 528, across 3 files
- Get explicit confirmationin 45 of 528, across 1 file
- Generate a design system before codingin 19 of 528, across 6 files
- Maintain at least 4.5:1 color contrast ratioin 19 of 528, across 8 files
- Describe component shapes, colors, shadows, and interaction statesin 18 of 528, across 4 files
- Check Python installation and install if missingin 17 of 528, across 4 files
- Default to html-tailwind if stack is unspecifiedin 17 of 528, across 4 files
Said here and by no other author read
- use the provided fonts, colors, and components
- include a fixed neon gradient line on every page
- use the provided text and accent color tokens
- use the specified border opacity scale
- apply the provided CSS for navbar layout and styles
- use the provided CSS classes for cards and sections
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.