A modern personal portfolio website for Tapraj Pathak, built with React and Vite on the client side and an Express-based API on the server side. The site includes an interactive terminal-inspired hero section, project highlights, social links, and a working contact form.
This repository contains:
- A frontend portfolio site in the client folder
- A backend contact API in the server folder
- A responsive, animated UI with theme switching and command-palette navigation
- React
- Vite
- Tailwind CSS
- Framer Motion
- Lucide React
- Node.js
- Express
- MongoDB with Mongoose
- Nodemailer
- Cloudinary
- Helmet, CORS, and rate limiting
client/ # Vite + React frontend
server/ # Express API backend
- Interactive terminal-style homepage experience
- Smooth scrolling and animated sections
- Dark/light theme toggle
- Command palette navigation
- Contact form that sends messages through the backend API
Make sure you have the following installed:
- Node.js 18 or newer
- npm or pnpm
git clone https://github.com/Tapraj-Pathak/Tapraj-Pathak.github.io.git
cd Tapraj-Pathak.github.ioInstall the frontend dependencies:
cd client
npm installInstall the backend dependencies:
cd ../server
npm installCreate a .env file in the server folder and add the required values:
PORT=5000
CLIENT_URL=http://localhost:5173
NODE_ENV=development
MONGODB_URI=your_mongodb_connection_string
PRIMARY_EMAIL=your_primary_email
SECONDARY_EMAIL=your_secondary_email
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USER=your_smtp_username
SMTP_PASS=your_smtp_password
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secretStart the backend:
cd server
npm run devStart the frontend in a separate terminal:
cd client
npm run devThen open the local frontend URL shown by Vite, usually http://localhost:5173.
- npm run dev — start the Vite development server
- npm run build — build the app for production
- npm run preview — preview the production build
- npm run dev — start the server with watch mode
- npm run start — start the server normally
- The client can be deployed on Vercel, Netlify, or GitHub Pages
- The server API can be deployed on Render, Railway, or similar Node.js hosting providers
- Make sure the production frontend URL is set in the server environment variables
No license has been specified for this project yet.