From 39833cebd7ddd944f7031d45c9c2838f513b3132 Mon Sep 17 00:00:00 2001 From: sirpiglr <49359077-sirpiglr@users.noreply.replit.com> Date: Sun, 21 Dec 2025 03:05:00 +0000 Subject: [PATCH] Update application names and icons for a more intuitive user experience Update various application names and icons in the OS interface, including adding a 'Key' icon for the 'LOGIN' application. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 279f1558-c0e3-40e4-8217-be7e9f4c6eca Replit-Commit-Checkpoint-Type: intermediate_checkpoint Replit-Commit-Event-Id: 3935485c-2de6-4e82-b4bc-2acfd6eff399 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/b984cb14-1d19-4944-922b-bc79e821ed35/279f1558-c0e3-40e4-8217-be7e9f4c6eca/fg2WOSL Replit-Helium-Checkpoint-Created: true --- client/public/opengraph.jpg | Bin 48112 -> 6159 bytes client/src/pages/os.tsx | 249 +++++++++++++++++++++++++++++++----- 2 files changed, 218 insertions(+), 31 deletions(-) diff --git a/client/public/opengraph.jpg b/client/public/opengraph.jpg index 13a2a0d43436410675a1aef5d08ae702d8f73008..b317e747cf2434e9129ce3fa2bf45946f3dc99b3 100644 GIT binary patch literal 6159 zcmeH_&r2IY6vw}lO?Ed!TC-$b(=?K${@REssfXf0C>R<^5h}5T+8!i{F&B+tlhS{n zz4g$e-lP}*1HJapLvIxd#oCMb7f3;`+cyakEu_$M-y3%3JMX=H^X9_@$H6J$Pl}}? zga8B$1ZU#7R4A-1m!B3(OOJbjFCYu&fvsl8FE1{*FIHc=#%b>l6|2u!x23a*7b;P7`iFrQbwcFzC9F+kJ!oNi0wG3(TPmz?pWG! z+!=Rlaw->P@gQ0Vco%m;e)C0!)Aj cFaajO1egF5U;<2l2`~XBzy$sy0-4~)Z!h6&ivR!s literal 48112 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 diff --git a/client/src/pages/os.tsx b/client/src/pages/os.tsx index df8f5e2..51fb99d 100644 --- a/client/src/pages/os.tsx +++ b/client/src/pages/os.tsx @@ -13,7 +13,7 @@ import { Network, Activity, Code2, Radio, Newspaper, Gamepad2, Users, Trophy, Calculator, StickyNote, Cpu, Camera, Eye, Shield, Zap, Skull, Lock, Unlock, Server, Database, - TrendingUp, ArrowUp, ArrowDown, Hash + TrendingUp, ArrowUp, ArrowDown, Hash, Key } from "lucide-react"; interface WindowState { @@ -357,11 +357,11 @@ export default function AeThexOS() { const foundationApps: DesktopApp[] = [ { id: "networkneighborhood", title: "Network Neighborhood", icon: , component: "networkneighborhood", defaultWidth: 500, defaultHeight: 450 }, - { id: "mission", title: "Mission.txt", icon: , component: "mission", defaultWidth: 500, defaultHeight: 500 }, - { id: "foundry", title: "The Foundry", icon: , component: "foundry", defaultWidth: 450, defaultHeight: 500 }, + { id: "mission", title: "README.TXT", icon: , component: "mission", defaultWidth: 500, defaultHeight: 500 }, + { id: "foundry", title: "FOUNDRY.EXE", icon: , component: "foundry", defaultWidth: 450, defaultHeight: 500 }, { id: "devtools", title: "Dev Tools", icon: , component: "devtools", defaultWidth: 450, defaultHeight: 400 }, { id: "metrics", title: "System Status", icon: , component: "metrics", defaultWidth: 750, defaultHeight: 550 }, - { id: "passport", title: "My Computer", icon: , component: "passport", defaultWidth: 500, defaultHeight: 600 }, + { id: "passport", title: "LOGIN", icon: , component: "passport", defaultWidth: 500, defaultHeight: 600 }, { id: "terminal", title: "Terminal", icon: , component: "terminal", defaultWidth: 750, defaultHeight: 500 }, { id: "codeeditor", title: "The Lab", icon: , component: "codeeditor", defaultWidth: 700, defaultHeight: 500 }, { id: "music", title: "Radio AeThex", icon: , component: "music", defaultWidth: 400, defaultHeight: 350 }, @@ -373,11 +373,11 @@ export default function AeThexOS() { const corpApps: DesktopApp[] = [ { id: "networkneighborhood", title: "Network Neighborhood", icon: , component: "networkneighborhood", defaultWidth: 500, defaultHeight: 450 }, - { id: "mission", title: "Mission.txt", icon: , component: "mission", defaultWidth: 500, defaultHeight: 500 }, - { id: "foundry", title: "The Foundry", icon: , component: "foundry", defaultWidth: 450, defaultHeight: 500 }, + { id: "mission", title: "README.TXT", icon: , component: "mission", defaultWidth: 500, defaultHeight: 500 }, + { id: "foundry", title: "FOUNDRY.EXE", icon: , component: "foundry", defaultWidth: 450, defaultHeight: 500 }, { id: "devtools", title: "Dev Tools", icon: , component: "devtools", defaultWidth: 450, defaultHeight: 400 }, { id: "metrics", title: "System Status", icon: , component: "metrics", defaultWidth: 750, defaultHeight: 550 }, - { id: "passport", title: "My Computer", icon: , component: "passport", defaultWidth: 500, defaultHeight: 600 }, + { id: "passport", title: "LOGIN", icon: , component: "passport", defaultWidth: 500, defaultHeight: 600 }, { id: "network", title: "Global Ops", icon: , component: "network", defaultWidth: 700, defaultHeight: 550 }, { id: "files", title: "Asset Library", icon: , component: "files", defaultWidth: 700, defaultHeight: 500 }, { id: "pitch", title: "Contracts", icon: , component: "pitch", defaultWidth: 500, defaultHeight: 400 }, @@ -1777,6 +1777,8 @@ function TerminalApp() { "║ projects - List active projects ║", "║ scan - Scan network for nodes ║", "║ analyze - Run security analysis ║", + "║ ping - Check network status ║", + "║ whois - Look up architect profile ║", "║ decrypt - Decrypt secure message ║", "║ hack - ??? (try it) ║", "║ fortune - Random architect wisdom ║", @@ -2166,6 +2168,99 @@ function TerminalApp() { ], setHistory); break; + case 'ping': + await typeEffect(["", "Pinging AeThex Network..."], setHistory); + await delay(500); + await typeEffect([ + "PING aethex.network (42.42.42.42): 56 data bytes", + "64 bytes from 42.42.42.42: icmp_seq=0 ttl=64 time=0.042 ms", + "64 bytes from 42.42.42.42: icmp_seq=1 ttl=64 time=0.037 ms", + "64 bytes from 42.42.42.42: icmp_seq=2 ttl=64 time=0.041 ms", + "", + "--- aethex.network ping statistics ---", + "3 packets transmitted, 3 packets received, 0.0% packet loss", + "", + "✓ AeThex Network: ONLINE", + "" + ], setHistory); + break; + + case 'whois': + const target = args[1]?.toLowerCase(); + if (target === 'mrpiglr') { + await typeEffect([ + "", + "╔══════════════════════════════════════════════════╗", + "║ ARCHITECT PROFILE ║", + "╠══════════════════════════════════════════════════╣", + "║ CODENAME: mrpiglr ║", + "║ REAL NAME: [CLASSIFIED] ║", + "║ ROLE: Founder & Chief Architect ║", + "║ CLEARANCE: OVERSEE (Highest) ║", + "║ STATUS: ACTIVE ║", + "╠══════════════════════════════════════════════════╣", + "║ SKILLS: Metaverse Architecture, Web3, ║", + "║ Game Development, System Design ║", + "╠══════════════════════════════════════════════════╣", + "║ 'Building the operating system for ║", + "║ the Metaverse, one line at a time.' ║", + "╚══════════════════════════════════════════════════╝", + "" + ], setHistory); + } else if (target === 'trevorjoey' || target === 'dylan' || target === 'fadedlatte') { + await typeEffect([ + "", + `╔══════════════════════════════════════════════════╗`, + `║ ARCHITECT PROFILE ║`, + `╠══════════════════════════════════════════════════╣`, + `║ CODENAME: ${(target || '').padEnd(35)}║`, + `║ ROLE: Founding Architect ║`, + `║ CLEARANCE: ADMIN ║`, + `║ STATUS: ACTIVE ║`, + `╚══════════════════════════════════════════════════╝`, + "" + ], setHistory); + } else { + setHistory(prev => [...prev, "Usage: whois ", "Try: whois mrpiglr", ""]); + } + break; + + case 'foundry': + await typeEffect([ + "", + "╔══════════════════════════════════════════════════╗", + "║ 🔥 THE FOUNDRY - ARCHITECT BOOTCAMP ║", + "╠══════════════════════════════════════════════════╣", + "║ ║", + "║ Transform yourself into a certified ║", + "║ Metaverse Architect in 8 weeks. ║", + "║ ║", + "║ Learn: Game Dev, Web3, System Design ║", + "║ ║", + "║ Price: $500 (Limited Cohort) ║", + "║ ║", + "║ Use code TERMINAL10 for 10% off! ║", + "║ ║", + "╠══════════════════════════════════════════════════╣", + "║ Visit: aethex.studio ║", + "╚══════════════════════════════════════════════════╝", + "" + ], setHistory); + break; + + case 'discount': + await typeEffect([ + "", + "🎉 SECRET FOUND!", + "", + "Use code: TERMINAL10", + "For 10% off The Foundry bootcamp!", + "", + "Visit aethex.studio to enroll.", + "" + ], setHistory); + break; + default: setHistory(prev => [...prev, `Command not found: ${cmd}`, "Type 'help' for available commands.", ""]); } @@ -2191,7 +2286,7 @@ function TerminalApp() { } } else if (e.key === 'Tab') { e.preventDefault(); - const cmds = ['help', 'status', 'architects', 'projects', 'scan', 'analyze', 'decrypt', 'hack', 'fortune', 'whoami', 'neofetch', 'matrix', 'clear', 'tour', 'dice', 'cowsay', 'joke', 'weather', 'uptime', 'banner', 'coffee', 'sudo', 'secret']; + const cmds = ['help', 'status', 'architects', 'projects', 'scan', 'analyze', 'decrypt', 'hack', 'fortune', 'whoami', 'neofetch', 'matrix', 'clear', 'tour', 'dice', 'cowsay', 'joke', 'weather', 'uptime', 'banner', 'coffee', 'sudo', 'secret', 'ping', 'whois', 'foundry', 'discount']; const match = cmds.find(c => c.startsWith(input.toLowerCase())); if (match) setInput(match); } @@ -3417,34 +3512,126 @@ function NetworkNeighborhoodApp() { } function FoundryApp() { + const [viewMode, setViewMode] = useState<'info' | 'enroll'>('info'); + const [promoCode, setPromoCode] = useState(''); + const [promoApplied, setPromoApplied] = useState(false); + + const basePrice = 500; + const discount = promoApplied && promoCode.toUpperCase() === 'TERMINAL10' ? 0.10 : 0; + const finalPrice = basePrice * (1 - discount); + return (
-
- - The Foundry -
-
-
- +
+
+ + FOUNDRY.EXE
-

The Foundry

-

- Train to become a certified Metaverse Architect. Learn the protocols. Join the network. -

-
-
8-week intensive curriculum
-
AeThex Passport certification
-
Join the architect network
+
+ +
- - Apply Now -
+ + {viewMode === 'info' ? ( +
+
+ +
+

The Foundry

+

+ Train to become a certified Metaverse Architect. Learn the protocols. Join the network. +

+
+
8-week intensive curriculum
+
AeThex Passport certification
+
Join the architect network
+
+ +
+ Hint: Check the terminal for secret codes +
+
+ ) : ( +
+
+
+

Architect Bootcamp

+

Cohort Starting Soon

+
+ +
+
+ Bootcamp Access + ${basePrice} +
+ {promoApplied && discount > 0 && ( +
+ Discount (TERMINAL10) + -${(basePrice * discount).toFixed(0)} +
+ )} +
+ Total + ${finalPrice.toFixed(0)} +
+
+ +
+ +
+ setPromoCode(e.target.value)} + placeholder="Enter code" + className="flex-1 bg-black/50 border border-yellow-500/30 px-3 py-2 text-white text-sm focus:outline-none focus:border-yellow-500" + /> + +
+ {promoApplied && promoCode.toUpperCase() === 'TERMINAL10' && ( +

Code applied! 10% discount.

+ )} + {promoApplied && promoCode && promoCode.toUpperCase() !== 'TERMINAL10' && ( +

Invalid code. Try the terminal.

+ )} +
+ + + Complete Enrollment + + +

+ Redirects to aethex.studio for payment +

+
+
+ )}
); }