Skip to content

dhruvaparnathi/mac-os

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’ป MacOS CLI Portfolio

An interactive MacOS-inspired developer portfolio built with React, featuring a fully functional terminal interface and draggable window system.

Instead of traditional scrolling, users explore the portfolio using commands โ€” just like a real terminal.


๐ŸŒ Live Demo

Click for Live Demo


๐Ÿš€ Features

๐Ÿ–ฅ๏ธ MacOS-Inspired UI

  • Custom window system
  • Draggable & resizable windows using react-rnd
  • Clean glassmorphism design

โŒจ๏ธ Interactive CLI Experience

  • Terminal powered by react-console-emulator
  • Command-based navigation
  • Real-time responses

โšก Portfolio via Commands

  • about โ†’ Learn about me
  • skills โ†’ Tech stack
  • projects โ†’ My work
  • contact โ†’ Contact info
  • resume โ†’ Resume access

๐ŸŽจ Modern Design

  • Transparent glass terminal
  • Smooth typography & spacing
  • Developer-centric aesthetic

๐Ÿ› ๏ธ Tech Stack

  • Frontend: React.js
  • Styling: SCSS
  • Terminal Engine: react-console-emulator
  • Window System: react-rnd

๐Ÿ“ธ Preview

MacOS-style desktop with interactive terminal

image image image image

๐Ÿ“‚ Project Structure

src/
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ Navbar.jsx
โ”‚   โ”œโ”€โ”€ Dock.jsx
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ windows/
โ”‚   โ”œโ”€โ”€ MacWindow.jsx
โ”‚   โ”œโ”€โ”€ CLI.jsx
โ”‚   โ”œโ”€โ”€ Github.jsx
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ styles/
โ”‚   โ””โ”€โ”€ cli.scss
โ”œโ”€โ”€ assets/
โ””โ”€โ”€ App.jsx

โš™๏ธ Installation & Setup

# Clone repository
git clone https://github.com/your-username/macos-cli-portfolio.git

# Navigate into project
cd macos-cli-portfolio

# Install dependencies
npm install

# Start development server
npm run dev

๐ŸŽฏ Usage

  1. Open the terminal window
  2. Type help
  3. Navigate using commands

๐Ÿง  Challenges Faced

1. Terminal Layout Issues

  • The terminal library had internal layout constraints
  • Custom styling sometimes broke structure (flex conflicts)

Solution:
Avoided overriding internal layout and targeted specific classes instead.


2. Window Resizing & Dragging

  • Handling bounds and resizing using react-rnd
  • Preventing overflow and maintaining responsiveness

Solution:
Configured bounds properly and ensured correct parent height structure.


3. ASCII Rendering Issues

  • Monospaced alignment caused broken UI

Solution:
Replaced ASCII-heavy design with a cleaner UI-based welcome message.


4. UI Consistency

  • Matching macOS feel (spacing, blur, shadows)

Solution:
Used glassmorphism, subtle shadows, and consistent spacing.


๐Ÿ”ฎ Future Improvements

  • โšก Custom-built terminal
  • โŒจ๏ธ Command autocomplete
  • ๐Ÿ“‚ File system simulation
  • ๐ŸŽฌ Boot animation
  • ๐ŸŒ Open projects in modal

๐Ÿ“ฌ Contact


โญ Inspiration

Inspired by macOS UI and interactive developer portfolios that focus on experience over static design.


๐Ÿ“„ License

This project is licensed under the MIT License.

About

My Portfolio in my different Style! , Hope you love it.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors