About | Features | Easter Eggs | Stack | Setup | License
Personal portfolio styled as a terminal OS: dark, monospace, and a little cheeky. Built with Next.js 15 and TypeScript.
| Route | What's there |
|---|---|
/ |
System explorer: overview, skills, experience, education, community |
/workbench |
Projects with live links and tech stacks |
/logs |
Technical blog (MDX-based) |
/contact |
Contact form → Resend (Email) |
Interactive:
- Command bar: press
/to open an in-page terminal with actual commands - Animated CPU load: spikes to
CRITICAL: 100%every 8s on the home screen - Modules table: all skills with
VERSION,STATUS, and a one-liner description - Kernel panic 404: stack trace, blame the intern, press any key to go home
- Fully responsive: command bar is a bottom sheet on mobile, centered modal on desktop
| Trigger | Effect |
|---|---|
Press / anywhere |
In-page terminal opens |
sudo play in the terminal |
🤫 |
| Any unknown URL | Kernel panic 0x404 |
- Next.js 15: App Router
- TypeScript
- Tailwind CSS + shadcn/ui
- MDX: technical blog
- Resend: contact form delivery
- Vercel Analytics
Prerequisites: Node.js v18.17+, npm, Git.
git clone https://github.com/harshhh28/portfolio
cd portfolio
npm install
npm run dev
# → http://localhost:3000Environment variables — create .env at the root:
RESEND_API_KEY=your_resend_api_key
RESEND_FROM_EMAIL=onboarding@resend.dev
EMAIL_RECIPIENT=your_email@example.comResend:
- Create a Resend account.
- Generate an API key.
- Add your verified domain or use the default
onboarding@resend.devfor testing.
MIT: see LICENSE.
Made with ❤️ by Harsh Gajjar