Linux Mastery Frontend
A full-stack web application designed for students to learn Linux commands through a real-time, browser-based terminal. Each user session spawns an isolated Ubuntu Docker container, providing a safe and authentic playground for learning.
-
Authentic Terminal: Powered by xterm.js, providing a professional terminal look and feel.
-
Isolated Sandboxing: Uses Docker containers to ensure student actions do not affect the host system.
-
Real-Time Interaction: Zero-latency communication using WebSockets (socket.io).
-
Resource Management: Automatically cleans up containers on disconnect using the
--rmflag and explicit cleanup logic. -
Responsive UI: Styled with Tailwind CSS v4 and Framer Motion.
- React 19 (Vite)
- Tailwind CSS v4
- xterm.js (Terminal Engine)
- Socket.io-client
- Node.js (Express)
- Socket.io (WebSockets)
- node-pty (Pseudo-terminal handler)
- Docker (Containerization)