Skip to content

shubham1592/terminal-portfolio

Repository files navigation

Shubham Kumar — Developer Portfolio

Welcome to the repository for my personal portfolio website. This site is a fusion of retro terminal aesthetics and modern web design, built to showcase my background, technical skills, and project work as a Senior Data Engineer and current MS Computer Science student at Northeastern University, Boston.

🧠 About the Site

This is a dynamic single-page portfolio website designed with a "retro terminal + modern UI" theme. It includes:

  • Smooth scroll navigation
  • Interactive project and profile cards
  • Custom bottom dock (Mac-like)
  • Retro-styled code animations and typewriter text
  • Fully responsive layout
  • Embedded Spotify playlist
  • Interactive contact form with EmailJS integration
  • Easter egg section ("Beyond Code") highlighting interests beyond tech
  • NEW: One-click resume download functionality
  • NEW: Smooth scroll to contact section from landing page
  • NEW: Fully static site - no backend dependencies

🚀 Features

  • Landing Page: Terminal-style typewriter introduction with download resume and contact buttons
  • About Me: Animated, keyword-highlighted terminal lines
  • Projects: Clickable project cards with animations
  • Tech Stack: Icons and categories styled in a retro grid
  • Beyond Code: Music, blog, hackathon, and personal fun facts
  • Contact: Interactive form with EmailJS integration and hover-animated icons
  • Smooth scrolling: All navigation is smooth and fluid
  • Fully responsive: Optimized for all screen sizes
  • Resume Download: Direct download of PDF resume from Google Drive
  • Quick Contact Access: Instant smooth scroll to contact section from hero
  • Static Site: Zero backend dependencies, perfect for Netlify/Vercel deployment

🛠️ Tech Stack

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • Framer Motion (for animations)
  • EmailJS (for contact form functionality)
  • Lucide Icons
  • Terminal-inspired custom CSS

🖥️ Live Demo

You can view the live version of this portfolio at:

  • to be added later

🧩 Sections Overview

  • Experience: Expandable-Collapsible experiences in detail.
  • Projects: Includes 6 key projects (3 academic + 3 professional), like:
    • Sensei: AI-powered onboarding assistant built with GPT-4o and LangChain
    • Data Lake Optimizer: Cost-saving Spark framework
    • Chess Engine with Parallel Computing
  • Tech Stack: Categorized view of tools and languages used professionally
  • Beyond Code: Includes Spotify playlist, blogs, guitar events, and hackathon history
  • Contact: Reach out for full-time opportunities, internships, collaborations, or feedback

🆕 Latest Updates

Version 3.0.0 (Latest) - Static Site Conversion

  • EmailJS Integration: Replaced backend with EmailJS frontend SDK
  • Static Site: Removed all backend dependencies (Express, Nodemailer, etc.)
  • Netlify/Vercel Ready: Perfect for static hosting with instant load speeds
  • Simplified Deployment: No server configuration required

Version 2.1.0

  • Resume Download: Added one-click resume download functionality from Google Drive
  • Smooth Contact Navigation: Enhanced "Contact Shubham" button with smooth scroll to contact section
  • Updated Contact Information: Fixed email address in contact icons section
  • Improved User Experience: Better navigation flow and accessibility

📝 How to Use / Run Locally

  1. Clone the repository

    git clone https://github.com/shubham1592/terminal-portfolio.git
  2. Navigate to the project folder

    cd terminal-portfolio
  3. Install dependencies

    npm install
  4. Start the development server

    npm run dev
  5. Open your browser and visit:

🚀 Deployment

This project is now fully static and can be deployed on any static hosting platform:

Netlify Deployment

  1. Push your code to GitHub
  2. Connect your repository to Netlify
  3. Build command: npm run build
  4. Publish directory: dist
  5. Deploy!

Vercel Deployment

  1. Push your code to GitHub
  2. Import your repository to Vercel
  3. Framework preset: Vite
  4. Deploy!

GitHub Pages

  1. Push your code to GitHub
  2. Go to repository Settings > Pages
  3. Source: Deploy from a branch
  4. Branch: main, folder: /docs (build output)
  5. Deploy!

📧 Contact Form Configuration

The contact form uses EmailJS with the following configuration:

  • Service ID: service_xdhyszj
  • Template ID: template_pygzv53
  • Public Key: y1nlhj4WSG6l4oA9e

Form fields are mapped as:

  • namefrom_name
  • emailfrom_email
  • reasonreason
  • messagemessage
  • wantReplywant_reply (sends "Yes" or "No")

🙋‍♂️ Contact

Feel free to connect with me:

📄 License

  • This project is not open-source. All rights reserved © 2025 Shubham Kumar.

Thanks for visiting!

Packages

 
 
 

Contributors

Languages