Transform IronForge from its current clean/corporate look into an immersive cyberpunk/matrix/tron/futuristic experience — your signature dark-mode aesthetic with neon accents, glowing borders, digital rain effects, scan-line textures, and a grid-based futuristic UI. Integrate shadcn/ui components for consistent, accessible base elements.
- Run
npx shadcn@latest initin the project - Configure for Tailwind CSS v4, dark mode, and New York style
- Set up
components/ui/directory for shadcn primitives - Install core components:
button,card,input,textarea,select,checkbox,badge,progress,separator,scroll-area,tooltip,dialog
Replace the current iron-* / forge-* palette with a cyberpunk palette:
| Token | Color | Usage |
|---|---|---|
--cyber-black |
#0a0a0f |
Primary background |
--cyber-darker |
#0d0d14 |
Card backgrounds |
--cyber-dark |
#12121c |
Elevated surfaces |
--cyber-surface |
#1a1a2e |
Panels, sidebars |
--cyber-border |
#2a2a40 |
Borders, dividers |
--neon-cyan |
#00f0ff |
Primary accent (Tron) |
--neon-magenta |
#ff00aa |
Secondary accent |
--neon-green |
#00ff41 |
Success / matrix rain |
--neon-amber |
#ffaa00 |
Warnings, forge fire |
--neon-red |
#ff0040 |
Errors, danger |
--neon-blue |
#0066ff |
Links, info |
--text-primary |
#e0e0f0 |
Primary text |
--text-secondary |
#8888aa |
Muted text |
--text-glow |
#00f0ff |
Glowing headings |
Integrate into shadcn CSS variables (--primary, --secondary, --accent, etc.).
- Import JetBrains Mono (monospace, code feel) for headings and data
- Import Inter or Space Grotesk for body text
- Add glow text utility classes:
.text-glow-cyan,.text-glow-magenta,.text-glow-green
- Scan-line overlay — subtle horizontal lines across the entire viewport (CSS
::afteron body) - Neon glow borders —
box-shadowwith colored blur for cards/panels - Pulse/breathe animations — for active elements and the forge logo
- Grid background pattern — Tron-style grid lines on the background
- Glitch text effect — for the "IronForge" logo/title
- Typing cursor blink — for the AI chat streaming indicator
- Fade-in-up — for content sections on load
- Lightweight CSS-only digital rain effect OR a small canvas component (
components/ui/matrix-rain.tsx) - Used subtly on the landing page hero behind content
- Low opacity so it doesn't distract from content
- CSS perspective grid effect for the landing page hero
- Gives depth and the "Tron: Legacy" feel
- Vanishing point grid receding into the background
- Dark body background (
bg-cyber-black) - Scan-line overlay
- Font loading (JetBrains Mono + Space Grotesk via
next/font) - Global neon glow focus ring styles
- Hero section: Tron grid floor background + matrix rain
- Logo: "IRON
FORGE" with glitch animation and cyan glow - Tagline: Typewriter effect with blinking cursor
- 6-phase list: Styled as a terminal readout with numbered lines (
01 >,02 >, etc.) — neon green text - Buttons: shadcn
Buttonwith neon cyan border glow, hover pulse effect - State selection: Two glowing cards with hover neon border, WA=cyan, OR=magenta accent
- Profile form: shadcn
Input,Select,Checkboxwith cyberpunk styling — glowing borders on focus
- Same dark treatment, no changes to logic
- Dark panel (
bg-cyber-surface) with left neon border accent - Phase headers: monospace font, neon badges for progress
- Active step: cyan neon indicator bar (left border glow)
- Visited steps: dim green check, unvisited: dark outline
- Use shadcn
ScrollAreafor the nav - Collapsed state: neon icon bar
- Logo at top with subtle glow
- Dark card container (
bg-cyber-dark) with subtle neon border - Phase badge: shadcn
Badgewith neon accent - Heading: glow text
- Description: muted body text
- Cost/Time cards: neon-bordered shadcn
Cardwith icon glow - Navigation buttons: shadcn
Buttonwith neon styling
- shadcn
Checkboxcomponent with custom cyberpunk styling - Completed items: neon green check with subtle green glow
- Item cards: dark border, hover = neon border glow
- Required indicator: neon red asterisk
- Links: neon blue with underline glow
- shadcn
Cardwith dark background - Icon with neon glow
- Value text in monospace with cyan color
- Subtle neon top-border accent
- Dark card style with neon border on hover
- Type icon with glow effect
- URL in monospace, neon blue
- Dark panel (
bg-cyber-darker) with left neon magenta border - Header: "⚒️ IRONFORGE MENTOR" in monospace, magenta glow
- Messages:
- User: neon cyan background (semi-transparent)
- Assistant: dark surface with left magenta accent bar
- Streaming indicator: three pulsing neon dots
- Input: shadcn
Textareawith neon border glow on focus - Send button: shadcn
Buttonwith neon accent - Suggested questions: dark bordered cards with hover glow
- Dark background with grid pattern
- Progress bar: neon gradient (cyan → green)
- Phase cards: dark with neon border accents
- Completed items: neon green, uncompleted: dim
- Print button: styled with neon outline
- Dark track, neon thumb, glow on hover
- All interactive elements: neon glow ring instead of default blue
- Fade-in-up on route change for content areas
- Cards: neon border glow intensifies
- Buttons: subtle pulse/breathe
- Links: underline glow animation
- Cyberpunk-themed loading skeleton with neon pulse
- Replace "Loading..." text with animated "INITIALIZING..." or forge-themed message
| File | Action |
|---|---|
package.json |
Add shadcn deps (auto via CLI) |
app/globals.css |
Complete rewrite — cyberpunk theme, effects, animations |
app/layout.tsx |
Dark body, font imports, scan-line overlay |
app/page.tsx |
Full redesign with cyberpunk hero, glitch logo, Tron grid |
app/wizard/layout.tsx |
Minor — dark loading state |
app/wizard/[phase]/[step]/page.tsx |
Update class names for dark theme |
app/wizard/summary/page.tsx |
Dark redesign with neon progress bars |
components/wizard/progress-sidebar.tsx |
Dark panel, neon indicators, shadcn ScrollArea |
components/wizard/step-content.tsx |
Dark cards, neon badges, shadcn components |
components/wizard/checklist.tsx |
shadcn Checkbox, neon styling |
components/wizard/cost-card.tsx |
shadcn Card, neon accents |
components/wizard/resource-link.tsx |
Dark card, neon hover |
components/wizard/chat-panel.tsx |
Dark panel, neon accents, shadcn inputs |
components/ui/matrix-rain.tsx |
NEW — Matrix digital rain background component |
components/ui/tron-grid.tsx |
NEW — Tron perspective grid background |
components/ui/*.tsx |
NEW — shadcn primitives (button, card, input, etc.) |
lib/utils.ts |
NEW — cn() utility for shadcn (clsx + tailwind-merge) |
content/**— All content data files unchangedlib/types/**— All TypeScript types unchangedlib/store/**— All localStorage logic unchangedlib/ai/**— System prompts unchangedapp/api/chat/route.ts— API route unchangedtsconfig.json— No changes needednext.config.ts— No changes needed
- Install shadcn/ui + dependencies (
clsx,tailwind-merge,class-variance-authority) - Generate shadcn components (button, card, input, textarea, select, checkbox, badge, progress, scroll-area)
- Rewrite
globals.csswith cyberpunk theme + all CSS effects - Update
layout.tsxwith fonts and dark base - Create
matrix-rain.tsxandtron-grid.tsxeffect components - Redesign landing page (
page.tsx) - Redesign all wizard components (sidebar → content → checklist → cost-card → resource-link → chat)
- Redesign summary page
- Polish: scrollbar, focus states, hover effects, loading states
npx tsc --noEmit+npm run build— fix all errors- Visual QA in browser