A stunning, fully functional simulation of an Arch Linux desktop environment built with React.js that showcases my portfolio in an interactive and engaging way. Experience a complete desktop OS in your browser with working applications, file system, terminal commands, and more. Features a responsive mobile experience with an Arch Linux installer simulation for smaller screens.
- Authentic Arch-Linux-style desktop with custom wallpapers and system theming
- Advanced window management system with dragging, resizing, minimizing, and maximizing
- Multi-window support with proper z-index management and focus handling
- Fully responsive design that adapts to different screen sizes with mobile installer
- Real-time system status indicators (battery with native API, volume, WiFi, system time)
- Interactive dock with system controls including music playback and volume adjustment
- Interactive file manager with navigation, breadcrumb paths, and file operations
- Realistic directory structure (
/home/muneer/with Documents, Projects, Pictures, Music, Videos) - Multiple file types support: Text files, images, audio, videos, PDFs, markdown files
- File preview and editing capabilities with real-time saving to localStorage
- Dynamic file system loading from JSON structure with async operations
- Virtual file system persistence across browser sessions
- Custom terminal interface with authentic Linux styling and prompt
- Portfolio-specific commands for showcasing skills and experience interactively
- System commands:
ls,cd,cat,pwd,clear,help,neofetchwith auto-run - Portfolio commands:
bio,skills,experience,projects,contact,education - Command history and navigation with arrow key support and persistence
- Tab completion for commands and file paths with intelligent suggestions
- Multi-command execution with semicolon separation support
- Music Player: Play audio files with controls, progress bar, volume control and global system integration
- Video Player: Built-in HTML5 video player in browser with support for MP4, MKV, AVI and more
- Image Viewer: Display images with zoom, navigation and file metadata
- Text Editor: Edit and save text files with syntax highlighting and localStorage persistence
- PDF Viewer: View PDF documents in browser component (certificates, resume)
- Web Browser: Embedded browser simulation with GitHub profile integration and API fetching
- Mobile Arch Installer: Complete mobile-responsive Arch Linux installation simulation
- Smooth animations and transitions with CSS transforms and backdrop filters
- Backdrop filters and glass morphism effects for modern UI aesthetics
- Authentic Linux theming and icons with Arch Linux branding
- Login screen simulation with user authentication flow
- Auto-start terminal for immediate interaction with neofetch display
- Mobile-responsive Arch installer for small screen devices
- System status indicators with real battery API integration when available
- Interactive dock with system controls including volume, music, and system info panels
- Adaptive Design: Automatically switches to mobile interface on smaller screens
- Arch Linux Installer Simulation: Complete mobile-optimized installation experience
- Touch-Friendly Interface: Optimized for mobile interaction patterns
- Progressive Enhancement: Desktop features gracefully degrade on mobile
- Mobile Terminal: Full-featured terminal experience optimized for touch input
- React.js 19.1.0 - Modern UI library with hooks and functional components
- CSS3 - Advanced styling with backdrop filters, animations, and glass morphism
- JavaScript ES6+ - Modern JavaScript features and async/await patterns
- React Icons 5.5.0 - Comprehensive icon library for UI elements
- Axios 1.9.0 - HTTP client for GitHub API integration
- Create React App 5.0.1 - Build toolchain and development server
- Tailwind CSS 3.4.17 - Utility-first CSS framework for rapid styling
- ESLint 9.23.0 - Advanced code linting and formatting with multiple plugins
- PostCSS 8.4.49 - CSS processing and optimization with autoprefixer
- React Router DOM 7.6.1 - Navigation and routing for SPA functionality
- File System Loader - Dynamic JSON-based file system with virtual directory structure
- Terminal Commands Engine - Custom command processor with portfolio-specific commands
- Window Management System - Multi-window state management with drag/resize/focus
- Portfolio Data Integration - Dynamic content loading from centralized data module
- Music Manager - Global audio system with volume control and player synchronization
- Mobile Responsive Design - Arch Linux installer simulation for mobile devices
- GitHub API Integration - Real-time profile and repository data fetching
- Local Storage Persistence - File editing and system preferences persistence
Portfolio/
βββ frontend/
β βββ public/
β β βββ assets/ # Static assets (icons, images, music)
β β βββ home/muneer/ # Simulated file system
β β βββ Documents/ # Resume, cover letter, certificates
β β βββ Projects/ # Project documentation and code
β β βββ Pictures/ # Images and avatars
β β βββ Videos/ # Video files and project demos
β β βββ Music/ # Audio files for music player
β βββ src/
β β βββ components/ # React components
β β β βββ Desktop.js # Main desktop environment
β β β βββ Terminal.js # Terminal emulator with portfolio commands
β β β βββ FileManager.js # File browser with navigation
β β β βββ TextEditor.js # Text file editor with save functionality
β β β βββ MusicPlayer.js # Audio player with system integration
β β β βββ ImageViewer.js # Image display with zoom controls
β β β βββ Browser.js # Web browser with GitHub integration
β β β βββ Dock.js # System dock with status indicators
β β β βββ MobileArchInstaller.js # Mobile responsive installer
β β βββ data/ # Portfolio content and configuration
β β β βββ portfolioData.js # Centralized portfolio information
β β βββ styles/ # Component-specific CSS modules
β β βββ utils/ # Utility functions and helpers
β β βββ fileSystemLoader.js # Virtual file system management
β β βββ terminalCommands.js # Terminal command processing
β β βββ musicManager.js # Global music state management
β βββ package.json # Dependencies and scripts
β βββ postcss.config.js # PostCSS configuration
β βββ tailwind.config.js # Tailwind CSS configuration
βββ add_gitkeeps.py # Utility script for git management
βββ README.md # Project documentation
Open the terminal and try these commands to explore my portfolio:
bio # Personal background and introduction
skills # Technical skills and technologies
experience # Professional work experience
projects # Portfolio projects with details
education # Educational background
contact # Contact information and social links
neofetch # System information display (auto-runs on startup)
help # List all available commandsls # List directory contents
cd [dir] # Change directory
cat [file] # Display file contents
pwd # Show current directory
clear # Clear terminal screen
history # Show command history- Dynamic wallpaper system with Arch Linux inspired themes
- Enhanced taskbar with system tray showing time, battery (real API when available), volume, and network status
- Interactive application dock with hover effects, tooltips, and launch capabilities
- Context menu system for right-click interactions and quick access
- System information panels with real-time hardware and software details
- Draggable windows with smooth animations and momentum
- Resizable windows with minimum size constraints and aspect ratio handling
- Advanced focus management with proper z-index handling and bring-to-front functionality
- Window controls (minimize, maximize, close) with visual feedback
- Multi-window state persistence across application sessions
- JSON-based file structure for easy content management and updates
- Dynamic file loading from public directory with async operations
- Advanced file type detection and appropriate viewer selection
- Read/write capabilities with localStorage persistence and auto-save
- Virtual directory navigation with breadcrumb paths and history
- Node.js 16+ - JavaScript runtime
- npm - Package manager
- Modern web browser - Chrome, Firefox, Safari, Edge
# Clone the repository
git clone https://github.com/Muneer320/Portfolio.git
cd Portfolio
# Install npm and Node.js using your preferred method
# 1. Download from official website: "https://nodejs.org/"
# 2. Package managers
sudo pacman -S nodejs npm # For Arch Linux
sudo apt install nodejs npm # For (Ubuntu/Debian) based Linux
brew install node npm # For macOS
choco install nodejs npm # For Windows (PowerShell as Admin)
# Navigate to frontend directory and install dependencies
cd frontend
npm install
# Start development server
npm startThe application will open at http://localhost:3000
This portfolio demonstrates proficiency in:
- React.js ecosystem and modern development practices with hooks and functional components
- Advanced CSS with animations, glass morphism effects, and responsive design
- JavaScript ES6+ features, async/await patterns, and modern design patterns
- State management with React hooks and component architecture
- File system simulation and data management with JSON-based virtual directories
- Multimedia handling with video playback, audio management, and image processing
- API integration with GitHub REST API and real-time data fetching
- User interface design and user experience with accessibility considerations
- Responsive web development with mobile-first approach and adaptive layouts
- Performance optimization with lazy loading and efficient rendering
- Modern development tools including Tailwind CSS, ESLint, and PostCSS
Built with β€οΈ using React.js | An Interactive Portfolio Experience