> MAN_PAGE TERMINAL UI _
A complete manual for retro terminal CSS/JS components. Terminal UI adds data-attribute helpers, command palette, theme presets, safer JS defaults, and reusable docs/landing modules.
> 01. STARTER TEMPLATE (BOILERPLATE)
Copy this empty HTML boilerplate to start fresh with Terminal UI.
<!DOCTYPE html>
<html lang="en" data-terminal-theme="green">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bunker OS</title>
<link rel="icon" type="image/svg+xml" href="assets/terminal-icon.svg">
<link rel="stylesheet" href="assets/terminal.css">
</head>
<body class="t-crt">
<div class="t-container">
<!-- Your UI code goes here -->
</div>
<script src="assets/terminal.js"></script>
</body>
</html>
> 02. THEME CUSTOMIZATION
Terminal UI is designed to be customizable. Change the scheme by overriding variables in your custom CSS.
:root {
--t-green: #ffb000; /* foreground */
--t-green-dim: #996900; /* foreground, dimmed */
--t-accent-rgb: 255, 176, 0; /* same colour as R, G, B - see note */
--bg-base: #110d00;
--bg-surface: #1f1700;
}
--t-accent-rgb must match --t-green. Every translucent accent wash
— hover glows, tinted panels, dashed borders, the dot grid, focus rings, box shadows —
is written as rgba(var(--t-accent-rgb), <alpha>). Override
--t-green on its own and the solid foreground changes while roughly fifty washes
behind it stay on the old colour, which reads as a colour bleed.
Optional, for full control: --t-white (near-white text, keep a
faint cast of the theme) and --t-code-fg (code foreground). Both have sensible green
defaults. Legacy comma syntax is required in
--t-accent-rgb: rgba(var(--x), 0.05) is supported everywhere, whereas
color-mix() and the modern slash syntax are not.
> 03. UTILITY CLASSES
<div class="d-flex justify-content-between align-items-center mb-3">
<div class="text-danger font-bold t-blink">D-FLEX & T-BLINK</div>
<div class="fs-small text-muted">FS-SMALL & TEXT-MUTED</div>
</div>
.d-flex, .flex-column, .justify-content-center, .justify-content-between, .align-items-center, .gap-2Sizing:
.w-25, .w-50, .w-75, .w-100, .h-100, .w-autoSpacing:
.m-0 to .m-5, .p-0 to .p-5, .px-3, .py-2, etc.Typography:
.text-center, .text-right, .font-bold, .fs-smallVisual:
.t-glow, .t-flicker, .t-border-bottom
> 04. RESPONSIVENESS & BREAKPOINTS
<div class="d-none-mobile">Desktop Only</div>
<div class="d-none-desktop">Mobile Only</div>
> 05. LAYOUT MODULES
A. KANBAN BOARD (.t-board)
<div class="t-board">
<div class="t-board-column">
<div class="t-board-header">PENDING</div>
<div class="t-board-body"><div class="t-board-card">Data Task</div></div>
</div>
</div>
B. THREAD CONNECTOR (.t-thread)
Satellite is airborne.
<div class="t-thread">
<div class="t-thread-item">
<span class="text-muted fs-small">10:00 AM</span>
<p class="m-0">Satellite is airborne.</p>
</div>
</div>
C. MARKDOWN BODY (.t-markdown)
Terminal Heading
Text with inline_code.
Message: Defend the bunker!
<div class="t-markdown">
<h3>Terminal Heading</h3>
<p>Text with <code>inline_code</code>.</p>
</div>
> 06. VISUAL FILTERS
<img src="image.jpg" class="t-retro-filter">
> 08. CENTER SCREEN
<div class="t-center-screen">
<div class="t-center-box t-card">...</div>
</div>
> 09. CONTAINERS & GRID
<div class="t-grid t-grid-2">
<div>COL 1</div>
<div>COL 2</div>
</div>
> 10. SIDEBAR LAYOUT
<div class="t-grid-layout">
<div class="t-main-panel">MAIN (70%)</div>
<div class="t-side-panel">SIDE (30%)</div>
</div>
> 11. CONTENT BOXES (CARDS)
System error.
<div class="t-card danger">
<div class="t-card-header">> CRITICAL</div>
<p>Error.</p>
</div>
> 12. TERMINAL WINDOW
Ping 192.168.1.1...
<div class="t-window">
<div class="t-window-header"><span>root@bunker:~#</span></div>
<pre class="t-window-body"><code>Ping 192.168.1.1...</code></pre>
</div>
> 13. BUTTONS & INPUTS
<input type="text" class="t-input" placeholder="IP">
<button class="t-btn">SCAN</button>
> 14. FORM VALIDATION
<input type="password" class="t-input error">
<span class="t-feedback text-danger">ERR</span>
> 15. INPUT ACTION
<div class="t-input-group">
<input type="password" id="passToken" class="t-input">
<button class="t-input-action-btn" onclick="Terminal.toggleInputAction('passToken', this)">[ SHOW ]</button>
</div>
> 16. TEXTAREA & SELECT
<select class="t-select"><option>PUBLIC</option></select>
<textarea class="t-textarea"></textarea>
> 17. CHECKBOX & RADIO
<label class="t-checkbox-label">
<input type="checkbox" checked><span class="t-checkmark"></span> Enable
</label>
> 19. DATA TABLES
| ID | FILE |
|---|---|
| 01 | data.sql |
<table class="t-table">
<thead><tr><th>ID</th></tr></thead>
<tbody><tr><td>01</td></tr></tbody>
</table>
> 20. LIST GROUPS
<div class="t-list-group">
<a href="#" class="t-list-item active">
<span class="t-list-item-title">STATION</span>
</a>
</div>
> 21. CHAT BUBBLES
<div class="t-chat-container">
<div class="t-bubble t-bubble-them">Incoming</div>
<div class="t-bubble t-bubble-me">My</div>
</div>
> 22. BADGES & PROGRESS
<span class="t-badge warning">PENDING</span>
<div class="t-progress-bg">
<div class="t-progress-bar w-50">50%</div>
</div>
> 23. LED INDICATORS
<span class="t-led-dot t-led-green"></span> OK
> 24. ALERTS & SPINNER
<div class="t-alert danger">> BREACH!</div>
<span class="t-spinner"></span>
> 25. TAB SYSTEM
<div class="t-tabs-wrapper">
<div class="t-tabs-header">
<button class="t-tab-btn active" data-t-tab="t1">MAIN</button>
</div>
<div id="t1" class="t-tab-content active">Content</div>
</div>
> 26. ACCORDION & TOOLTIP
Hover Text.
<div class="t-accordion">
<button class="t-accordion-btn" data-t-accordion>DIR</button>
</div>
<span data-tooltip="Info">Hover</span>
> 27. MODAL SYSTEM
<button class="t-btn" data-t-modal-open="myModal">OPEN</button>
<div id="myModal" class="t-modal">
<div class="t-modal-content">...</div>
</div>
> 28. NOTIFICATIONS (TOAST)
<button class="t-btn" onclick="Terminal.toast('Secure.', 'normal')">Toast</button>
> 29. BRANDING (ICON)
<link rel="icon" type="image/svg+xml" href="terminal-icon.svg">
> 30. NEW EXTENSIONS
A. DROPDOWN MENU (.t-dropdown)
<div class="t-dropdown">
<button class="t-btn" data-t-dropdown>[ v ]</button>
<div class="t-dropdown-menu">...</div>
</div>
B. TOGGLE SWITCH (.t-switch)
<label class="t-switch">
<input type="checkbox">
<span class="t-switch-slider"></span>
</label>
C. RANGE SLIDER (.t-range)
<input type="range" class="t-range">
D. TREE VIEW (.t-tree)
- sys_root
<ul class="t-tree">
<li>
<span class="t-tree-folder" onclick="Terminal.treeToggle(this)">root</span>
</li>
</ul>
E. JS TYPEWRITER
<button onclick="Terminal.typewrite('demo', 'TEXT', 50)">PLAY</button>
> 31. MEDIA EXTENSIONS
A. CUSTOM FILE UPLOAD
<div class="t-file-wrapper">
<span class="t-file-btn" id="file-label">> FILE</span>
<input type="file" id="file-input" onchange="Terminal.fileInput('file-input', 'file-label')">
</div>
B. IMAGE LIGHTBOX
<img src="terminal-icon.svg" width="60" class="t-retro-filter" data-t-lightbox alt="Demo">
C. EMPTY STATE
<div class="t-empty-state">
<span class="t-empty-state-icon">馃摗</span>
[ EMPTY ]
</div>
D. SKELETON LOADER
<div class="t-skeleton"></div>
E. BILINGUAL COMMAND
A CSS-only text swap primitive. Defaults to the primary language and reveals the alt text on hover.
<button class="t-btn t-bilingual-btn">
<span class="t-lang-default">[ OK ]</span>
<span class="t-lang-alt">[ SETUJU ]</span>
</button>
> 32. SOCIAL & APP
A. AVATAR & SPOILER
B. EDITOR / COMPOSER
C. TIMELINE FEED
D. ACTIVITY METRICS
KAMIS MENGKIS
CYCLING