feat: rebrand to RootNode Academy + add Real Ops scenario bundle

- Rename app title, header, tagline, footer, terminal tab to RootNode Academy
- Apply RootNode color palette (#39FF14 green, #00D4FF blue, GitHub-style darks)
- Add rootnode-runaway-monitor scenario (homelab NOC incident: oversized memory request)
- Add rootnode-real-ops bundle in terminal-green accent
- Update package name to rootnode-academy-ui
This commit is contained in:
2026-06-21 03:27:46 -05:00
parent d42aa779b1
commit f7cdb48833
9 changed files with 205 additions and 146 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>KubeKosh — Interactive Kubernetes Playground</title>
<title>RootNode Academy — Build From the Root</title>
<link rel="icon" type="image/svg+xml" href="/logo.svg" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Epilogue:wght@400;500;600;700;800;900&display=swap" rel="stylesheet">
+1 -1
View File
@@ -1,5 +1,5 @@
{
"name": "kubekosh-ui",
"name": "rootnode-academy-ui",
"version": "0.1.0",
"private": true,
"scripts": {
+2 -2
View File
@@ -410,9 +410,9 @@ export default function App() {
)}
<footer className={styles.footer}>
<div>&copy; {new Date().getFullYear()} The KubeKosh Project &bull; All rights reserved</div>
<div>&copy; {new Date().getFullYear()} RootNode Academy &bull; All rights reserved</div>
<div>
Made with <span className={styles.heart}></span> by <a href="https://github.com/zeborg" target="_blank" rel="noopener noreferrer" className={styles.footerLink}>zeborg</a>
Built on the open-source <a href="https://github.com/zeborg/kubekosh" target="_blank" rel="noopener noreferrer" className={styles.footerLink}>KubeKosh</a> project by zeborg
</div>
</footer>
</div>
+4 -4
View File
@@ -98,18 +98,18 @@ export default function Header({ clusterReady, onShowHistory }) {
<header className={styles.header}>
<div className={styles.brand}>
<div className={styles.logo}>
<img src="/logo.svg" alt="KubeKosh Logo" className={styles.logoImage} />
<span className={styles.logoText}>KubeKosh</span>
<img src="/logo.svg" alt="RootNode Academy Logo" className={styles.logoImage} />
<span className={styles.logoText}>RootNode Academy</span>
<span className={styles.version}>{import.meta.env.VITE_APP_VERSION}</span>
</div>
<span className={styles.tagline}>Interactive Kubernetes Playground</span>
<span className={styles.tagline}>Build From the Root</span>
</div>
<div className={styles.right}>
{/* GitHub link */}
<div className={styles.githubBtnContainer}>
<a
href="https://github.com/zeborg/kubekosh"
href="https://github.com/ced4568/kubekosh"
target="_blank"
rel="noopener noreferrer"
className={styles.githubBtn}
+1 -1
View File
@@ -147,7 +147,7 @@ export default function TerminalComponent({ collapsed, onToggleCollapse }) {
</div>
<span className={styles.barTitle}>
<span className={styles.barIcon}>$_</span>
bash kubekosh
bash rootnode
</span>
</div>
<div className={styles.barRight}>
+13 -13
View File
@@ -2,17 +2,17 @@
/* ── Dark theme (default) ────────────────────────────────────────────────── */
:root {
--bg: #0c0f14;
--surface: #131720;
--surface2: #1a2030;
--surface3: #212840;
--border: #252d42;
--border2: #2e3a55;
--bg: #0D1117;
--surface: #161B22;
--surface2: #1C232E;
--surface3: #232C3A;
--border: #21262D;
--border2: #30363D;
--green: #39d98a;
--green-dim: rgba(57,217,138,0.12);
--blue: #4dabf7;
--blue-dim: rgba(77,171,247,0.10);
--green: #39FF14;
--green-dim: rgba(57,255,20,0.12);
--blue: #00D4FF;
--blue-dim: rgba(0,212,255,0.10);
--amber: #fcc419;
--amber-dim: rgba(252,196,25,0.10);
--red: #ff6b6b;
@@ -22,9 +22,9 @@
--teal: #2dd4bf;
--teal-dim: rgba(45,212,191,0.11);
--text: #e2e8f4;
--text-2: #8899b8;
--text-3: #4d5f80;
--text: #E6EDF3;
--text-2: #8B949E;
--text-3: #586069;
--mono: 'IBM Plex Mono', monospace;
--sans: 'Epilogue', sans-serif;