Welcome to my interactive portfolio website built to simulate the Ubuntu 20.04 Desktop. This is a Next.js + TailwindCSS project where you can explore apps, wallpapers, and menus just like a real Ubuntu OS, but right inside your browser.
Live Demo: CLICK HERE
- Ubuntu-style desktop environment including a lock screen, navbar, side bar, and applications menu.
- Interactive apps: terminal, calculator, text editor, Chrome, Spotify, VS Code, Todoist, Trash, and more.
- Custom themes & wallpapers are available in
/public/themesand/public/wallpapers. - Integrated resume viewer (
public/files/Yash-resume.pdf). - Contact form powered by EmailJS.
- Built with Next.js and styled using Tailwind CSS.
To run this project locally, follow these steps.
git clone https://github.com/yashsarkar164/YashPortfolio.git
cd YashPortfolionpm installnpm run devThe site will now be running at http://localhost:3000.
npm run build
npm run exportAll static files will be generated in the out/ folder.
This project is automatically deployed to GitHub Pages using GitHub Actions.
The workflow file is .github/workflows/gh-deploy.yml.
This project uses EmailJS for handling contact forms.
- Create an account on EmailJS.
- Add a new service (Gmail or Outlook is recommended).
- Copy your Service ID, Template ID, and User ID.
- Add them to a
.env.localfile at the root of your project:
NEXT_PUBLIC_USER_ID= 'your_user_id'
NEXT_PUBLIC_TEMPLATE_ID= 'template_fqqqb9g'
NEXT_PUBLIC_SERVICE_ID= 'your_service_id'Contributions are always welcome! If you'd like to add new features or improve the design, please follow these steps:
- Fork the repository.
- Create your branch:
git checkout -b feature/AmazingFeature - Commit your changes:
git commit -m "Add AmazingFeature" - Push to the branch:
git push origin feature/AmazingFeature - Open a Pull Request.
If you like this project, you can support me here:

