Skip to content

🌐 A modern and interactive developer portfolio built with React, Tailwind CSS, Framer Motion, and ShadCN UI. Showcases personal projects, education, certifications, and contact information with a responsive dark/light theme.

Notifications You must be signed in to change notification settings

BABIN-JOE/Portfolio

Repository files navigation

πŸ’Ό Babin Joe's Developer Portfolio

This is a sleek and interactive developer portfolio built with React, TypeScript, Tailwind CSS, and Vite. It showcases Babin Joe’s work, including projects, certificates, education, and resume β€” along with a dark/light mode toggle and animated, responsive UI.

Banner

πŸ”— Live Site

➑️ https://babin-joe-portfolio.vercel.app/


πŸš€ Features

  • πŸŒ™ Dark/Light Mode Toggle
  • ⚑ Fast and optimized with Vite
  • πŸ’¬ Contact form powered by Vercel Serverless Function
  • 🧭 Smooth client-side routing via React Router
  • 🎨 Styled with Tailwind CSS + ShadCN UI
  • πŸ“± Fully Responsive across devices
  • πŸ” SEO-Friendly Structure
  • πŸ”„ Auto Scroll-to-Top on route change
  • πŸ§ͺ TypeScript for type safety
  • πŸ“‚ Organized code with modular components
  • πŸ“œ Markdown-supported and clean README

πŸ› οΈ Tech Stack

  • React
  • TypeScript
  • Tailwind CSS
  • ShadCN UI
  • Vite
  • React Router
  • Lucide Icons
  • Vercel (Hosting + API)

πŸ“ Folder Structure

Portfolio/
β”œβ”€β”€ public/
β”‚   └── (favicons, og images, etc.)
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ Navigation.tsx
β”‚   β”‚   β”œβ”€β”€ Footer.tsx
β”‚   β”‚   └── ScrollToTop.tsx
β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ Home.tsx
β”‚   β”‚   β”œβ”€β”€ About.tsx
β”‚   β”‚   β”œβ”€β”€ Projects.tsx
β”‚   β”‚   β”œβ”€β”€ Certificates.tsx
β”‚   β”‚   β”œβ”€β”€ Education.tsx
β”‚   β”‚   β”œβ”€β”€ Resume.tsx
β”‚   β”‚   β”œβ”€β”€ Contact.tsx
β”‚   β”‚   └── NotFound.tsx
β”‚   β”œβ”€β”€ components/ui/ (ShadCN UI components)
β”‚   β”œβ”€β”€ App.tsx
β”‚   └── main.tsx
β”œβ”€β”€ api/
β”‚   └── contact.js         # Contact form backend (Node.js)
β”œβ”€β”€ vercel.json
β”œβ”€β”€ package.json
β”œβ”€β”€ tailwind.config.ts
β”œβ”€β”€ tsconfig.json

πŸ“¦ Installation & Development

  1. Clone the repository
git clone https://github.com/BABIN-JOE/Portfolio.git
cd Portfolio
  1. Install dependencies
npm install
  1. Start development server
npm run dev
  1. Start backend (contact API) locally
cd api
node contact.js

πŸ§‘β€πŸ’» Deployment (Vercel)

The project is deployed using Vercel. It includes a Serverless Function (api/contact.js) to handle contact form submissions securely and efficiently.

To deploy manually:

vercel deploy

To run locally via Vercel:

vercel dev

πŸ“« Contact Form Backend

The backend is a Vercel serverless function defined in api/contact.js. It uses nodemailer to send emails to your address when a user submits the contact form.

Make sure to set these environment variables in Vercel or in a .env file inside the api/ directory:

FROM_EMAIL=your_email@example.com
FROM_PASS=your_email_password
TO_EMAIL=recipient_email@example.com

Note:
The environment variable names must match those above.
The .env file is already gitignored for security.


🎯 Improvements in Progress

  • Scroll-to-top on route change
  • Contact form routing bug fixed
  • Responsive mobile nav bar
  • Add animations using Framer Motion
  • Project filtering or tag system
  • Multilingual support

🧠 Inspiration

This portfolio is custom-built to reflect Babin Joe’s personality, technical skillset, and UI/UX preferences β€” sleek, techy, with interactive glowing touches.


πŸ“œ License

This project is licensed under the MIT License. Feel free to fork and customize, but credit is appreciated.


πŸ™Œ Author

Babin Joe
πŸ”— Portfolio | GitHub | LinkedIn


Built with ❀️ by Babin Joe

About

🌐 A modern and interactive developer portfolio built with React, Tailwind CSS, Framer Motion, and ShadCN UI. Showcases personal projects, education, certifications, and contact information with a responsive dark/light theme.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages