- ModuleManager: Central tracking for installed marketplace modules
- DataAnalyzerWidget: Real-time CPU/RAM/Battery/Storage widget (unlocked by Data Analyzer module)
- BottomNavBar: Navigation bar for Projects/Chat/Marketplace/Settings
- RootShell: Real root command execution utility
- TerminalActivity: Full root shell with neofetch, sysinfo, real Linux commands
- Terminal Pro module: Adds aliases (ll, la, h), command history
- ArcadeActivity + SnakeGame: Pixel Arcade module unlocks retro games
- fade_in/fade_out animations for smooth transitions
The boot screen was rendering as a black screen on web because
useNativeFeatures() called Capacitor's Network.getStatus() without
checking if the app was running on a native platform. This crashed the
entire AeThexOS component during mount.
Additionally, tablet testing code in use-platform-layout.ts was mixing
viewport width checks (responsive design) with native platform detection,
causing layout confusion between web and mobile builds.
Changes:
- Add isMobile() guards to all Capacitor plugin calls in useNativeFeatures
- Remove tablet viewport-width branch from usePlatformLayout (platform
detection should not check window.innerWidth)
- Rename isMobileDevice() to isSmallViewport() in embed-utils to clarify
it's a responsive check, not a platform check
- Rename local isMobile state to isNarrowViewport in os.tsx DesktopWidgets
to prevent shadowing the platform.ts isMobile() import
- Remove dead PlatformAdaptiveExample.tsx (not imported anywhere)
- Fix watchLocation TypeScript error (watchId is Promise<string>)
- Add web fallbacks for clipboard and browser in useNativeFeatures
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add handleBootKeyPress to handle keyboard input during boot
- Attach onKeyDown handler to both mobile and desktop boot screens
- Add tabIndex={0} to make boot screens focusable
- Pressing Enter now triggers handleGuestContinue to enter system
Fixes: Enter key does nothing on boot screen
- Comment out user agent-based mobile detection
- Only detect mobile when native bridges present (Capacitor/Flutter/Cordova)
- Fixes web browsers showing mobile UI instead of desktop OS
- Users on aethex.app will now see desktop interface
Desktop browsers should show desktop OS, not mobile app UI
Major Features:
- Custom .aethex programming language with cross-platform compilation
- Compiles to JavaScript, Lua (Roblox), Verse (UEFN), and C# (Unity)
- Built-in COPPA compliance and PII detection for safe metaverse development
Integration Points:
1. Terminal Integration
- Added 'aethex' command for in-terminal compilation
- Support for all compilation targets with --target flag
- Real-time error reporting and syntax highlighting
2. IDE Integration
- Native .aethex file support in Monaco editor
- One-click compilation with target selector
- Download compiled code functionality
- Two example files: hello.aethex and auth.aethex
3. Curriculum Integration
- New "AeThex Language" section in Foundry tech tree
- Three modules: Realities & Journeys, Cross-Platform Sync, COPPA Compliance
- Certification path for students
4. Documentation Site
- Complete docs at /docs route (client/src/pages/aethex-docs.tsx)
- Searchable documentation with sidebar navigation
- Language guide, standard library reference, and examples
- Ready for deployment to aethex.dev
5. npm Package Publishing
- @aethex.os/core@1.0.0 - Standard library (published)
- @aethex.os/cli@1.0.1 - Command line compiler (published)
- Both packages live on npm and globally installable
Domain Configuration:
- DNS setup for 29+ domains (aethex.app, aethex.co, etc.)
- nginx reverse proxy configuration
- CORS configuration for cross-domain requests
- OAuth redirect fixes for hash-based routing
Standard Library Features:
- Passport: Universal identity across platforms
- DataSync: Cross-platform data synchronization
- SafeInput: PII detection (phone, email, SSN, credit cards)
- Compliance: COPPA/FERPA age gates and audit logging
Documentation Package:
- Created aethex-dev-docs.zip with complete documentation
- Ready for static site deployment
- Includes examples, API reference, and quickstart guide
Technical Improvements:
- Fixed OAuth blank page issue (hash routing)
- Added .gitignore rules for temp files
- Cleaned up build artifacts and temporary files
- Updated all package references to @aethex.os namespace
Co-Authored-By: Claude <noreply@anthropic.com>
The battery level and charging event listeners were added but never
cleaned up when the component unmounts. This caused memory leaks as
anonymous functions couldn't be removed.
Fix:
- Store handler references in variables
- Properly cleanup event listeners in useEffect return function
- Prevents memory leaks on component unmount/remount cycles
- Create FLOWS.md with complete inventory of all 16 flows in codebase
- Mark 5 complete, 7 partial, and 4 not started flows
- Add [UNFINISHED FLOW] TODO markers to affected files:
- wine-launcher.sh: VM launcher not implemented
- execute.ts: Non-JS/TS language support missing
- app-registry.ts: Stub implementation only
- OAUTH_IMPLEMENTATION.md: Unlink endpoint needed
- DEPLOYMENT_STATUS.md: Railway deployment pending
- Add FLOWS.md reference to PROJECT_RUNDOWN.md
new file: QUICK_REFERENCE.md
new file: README_EXPANSION.md
new file: SESSION_SUMMARY.md
new file: VERIFICATION_CHECKLIST.md
new file: client/src/pages/lab.tsx
new file: client/src/hooks/use-websocket.ts
new file: client/src/pages/achievements.tsx
new file: client/src/pages/events.tsx
new file: client/src/pages/opportunities.tsx
modified: client/src/pages/os.tsx
modified: client/src/pages/passport.tsx
modified: package-lock.json
modified: server/websocket.ts
new file: test-implementation.sh
Update the OS boot sequence to include detailed hardware initialization, passport subsystem checks, and integrated identity detection. Adds a new API endpoint for retrieving authenticated user profiles.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 279f1558-c0e3-40e4-8217-be7e9f4c6eca
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: ae92f0ce-ed07-4e47-b7ac-e9684ebbe070
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/b984cb14-1d19-4944-922b-bc79e821ed35/279f1558-c0e3-40e4-8217-be7e9f4c6eca/nHHH2tH
Replit-Helium-Checkpoint-Created: true