Skip to content

MTahirKleem/Portfolio

Repository files navigation

Muhammad Tahir Kleem - Portfolio

A modern, animated portfolio website showcasing expertise in Machine Learning, AI, and Full Stack Development. Built with Next.js 15, React 19, TypeScript, and Framer Motion.

Next.js React TypeScript TailwindCSS

🌟 Features

  • Modern UI/UX: Sleek, responsive design with smooth animations and transitions
  • Dark Mode: Theme customization with multiple color schemes (Ocean, Forest, Sunset, Purple Haze, Cyberpunk)
  • Interactive Components:
    • Animated hero section with typing effects
    • Parallax scrolling backgrounds
    • Floating shapes and gradient effects
    • Smooth scroll navigation
  • Comprehensive Sections:
    • Hero with social links (GitHub, LinkedIn)
    • About with achievement statistics
    • Skills with filterable categories (ML/AI, Frontend, Backend, DevOps)
    • Projects showcase with live demos
    • Contact form with validation
  • Performance Optimized: Static export ready for GitHub Pages deployment
  • SEO Friendly: Proper metadata and semantic HTML

πŸ› οΈ Tech Stack

Frontend Framework

  • Next.js 15.2.4 - React framework with App Router
  • React 19 - Latest React with server components
  • TypeScript 5 - Type-safe development

Styling & UI

  • TailwindCSS 3.4 - Utility-first CSS framework
  • Framer Motion - Advanced animations and transitions
  • Radix UI - Accessible component primitives
  • Shadcn/ui - Beautifully designed components
  • Lucide React - Modern icon library

Animation & Effects

  • React Type Animation - Typing animation effects
  • React Intersection Observer - Scroll-based animations
  • Custom Parallax Effects - Depth and motion

Form & Validation

  • React Hook Form - Performant form handling
  • Zod - TypeScript-first schema validation

Additional Libraries

  • next-themes - Theme management
  • Sonner - Toast notifications
  • clsx & tailwind-merge - Conditional styling

πŸ“‹ Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js (v18 or higher)
  • pnpm (v8 or higher) - Fast, disk space efficient package manager

πŸš€ Getting Started

1. Clone the Repository

git clone https://github.com/yourusername/Portfolio.git
cd Portfolio

2. Install Dependencies

pnpm install

3. Run Development Server

pnpm dev

Open http://localhost:3000 in your browser to see the result.

4. Build for Production

pnpm build

This generates a static export in the out directory.

5. Start Production Server

pnpm start

πŸ“ Project Structure

Portfolio/
β”œβ”€β”€ public/                    # Static assets
β”‚   β”œβ”€β”€ images/               # Project and profile images
β”‚   β”‚   β”œβ”€β”€ profile/          # Profile pictures
β”‚   β”‚   └── projects/         # Project screenshots
β”‚   └── *.svg                 # SVG icons
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                  # Next.js App Router
β”‚   β”‚   β”œβ”€β”€ layout.tsx        # Root layout with providers
β”‚   β”‚   β”œβ”€β”€ page.tsx          # Home page
β”‚   β”‚   └── globals.css       # Global styles
β”‚   β”œβ”€β”€ components/           # React components
β”‚   β”‚   β”œβ”€β”€ hero.tsx          # Hero section with animations
β”‚   β”‚   β”œβ”€β”€ about.tsx         # About section with stats
β”‚   β”‚   β”œβ”€β”€ skills.tsx        # Skills with filtering
β”‚   β”‚   β”œβ”€β”€ projects.tsx      # Project showcase
β”‚   β”‚   β”œβ”€β”€ contact.tsx       # Contact form
β”‚   β”‚   β”œβ”€β”€ navbar.tsx        # Navigation bar
β”‚   β”‚   β”œβ”€β”€ footer.tsx        # Footer section
β”‚   β”‚   β”œβ”€β”€ theme-provider.tsx
β”‚   β”‚   β”œβ”€β”€ theme-customizer.tsx
β”‚   β”‚   β”œβ”€β”€ smooth-scroll.tsx
β”‚   β”‚   β”œβ”€β”€ parallax-*.tsx    # Parallax components
β”‚   β”‚   └── ui/               # Shadcn/ui components (40+)
β”‚   β”œβ”€β”€ hooks/                # Custom React hooks
β”‚   β”‚   β”œβ”€β”€ use-mobile.tsx
β”‚   β”‚   └── use-toast.ts
β”‚   β”œβ”€β”€ lib/                  # Utilities
β”‚   β”‚   └── utils.ts          # Helper functions
β”‚   └── styles/
β”‚       └── globals.css       # Additional global styles
β”œβ”€β”€ components.json           # Shadcn/ui configuration
β”œβ”€β”€ tailwind.config.ts        # TailwindCSS configuration
β”œβ”€β”€ tsconfig.json             # TypeScript configuration
β”œβ”€β”€ next.config.ts            # Next.js configuration
β”œβ”€β”€ postcss.config.mjs        # PostCSS configuration
β”œβ”€β”€ eslint.config.mjs         # ESLint configuration
β”œβ”€β”€ package.json              # Dependencies and scripts
└── README.md                 # Project documentation

🎨 Theme Customization

The portfolio includes multiple built-in themes:

  • Ocean (Default) - Blue and cyan tones
  • Forest - Green and emerald tones
  • Sunset - Orange and red tones
  • Purple Haze - Purple and violet tones
  • Cyberpunk - Neon pink and cyan tones

Themes can be changed via the theme customizer button in the UI.

πŸ“¦ Key Components

Hero Section

  • Animated gradient background
  • Typing animation effect
  • Social media links
  • Download CV button
  • Mouse-follow spotlight effect

About Section

  • Achievement statistics
  • Service cards with hover effects
  • Parallax background elements
  • Smooth reveal animations

Skills Section

  • 60+ technical skills
  • Category filtering (ML/AI, Frontend, Backend, DevOps)
  • Progress bars with animations
  • Organized by expertise level

Projects Section

  • Featured project showcases
  • Category filtering
  • Live demo and GitHub links
  • Hover effects and transitions

Contact Section

  • Form validation with React Hook Form
  • Contact information cards
  • Success/error notifications
  • Email integration ready

🚒 Deployment

Deploy to GitHub Pages

  1. Update basePath in next.config.ts to match your repository name
  2. Run the build and deploy command:
pnpm run deploy

This will:

  • Build the Next.js app
  • Export static files
  • Deploy to GitHub Pages using gh-pages

Deploy to Vercel

Deploy with Vercel

Simply push your code to GitHub and import the repository in Vercel.

Deploy to Netlify

  1. Push your code to GitHub
  2. Connect your repository to Netlify
  3. Set build command: pnpm build
  4. Set publish directory: out

πŸ”§ Configuration

Update Personal Information

  1. Profile Image: Replace public/images/profile/muhammad1.png
  2. Project Images: Add to public/images/projects/
  3. Personal Details: Update in respective component files:
    • src/components/hero.tsx - Name, titles
    • src/components/about.tsx - Bio, stats
    • src/components/skills.tsx - Skills list
    • src/components/projects.tsx - Projects data
    • src/components/contact.tsx - Contact info

Update Metadata

Edit src/app/page.tsx and src/app/layout.tsx for SEO metadata.

πŸ“± Responsive Design

The portfolio is fully responsive and optimized for:

  • πŸ“± Mobile devices (320px+)
  • πŸ“± Tablets (768px+)
  • πŸ’» Desktops (1024px+)
  • πŸ–₯️ Large screens (1440px+)

🎯 Performance

  • ⚑ Lighthouse Score: 95+
  • πŸš€ Static site generation for fast loading
  • πŸ“¦ Optimized bundle size
  • 🎨 CSS-in-JS with zero runtime overhead
  • πŸ–ΌοΈ Image optimization

πŸ› Known Issues

  • None currently. Report issues on GitHub.

πŸ“ Scripts

{
  "dev": "next dev",              // Start development server
  "build": "next build && next export",  // Build and export static site
  "start": "next start",          // Start production server
  "lint": "next lint",            // Run ESLint
  "deploy": "npm run build && gh-pages -d out"  // Deploy to GitHub Pages
}

🀝 Contributing

Contributions, issues, and feature requests are welcome!

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is free to use for personal purposes. For commercial use, please contact the author.

πŸ‘€ Author

Muhammad Tahir Kleem

  • 🌐 Portfolio: [Your Portfolio URL]
  • πŸ’Ό LinkedIn: [Your LinkedIn Profile]
  • πŸ™ GitHub: @yourusername
  • πŸ“§ Email: tahirkleem250@gmail.com
  • πŸ“± Phone: +92 3181326250
  • πŸ“ Location: Toba Tek Singh, Pakistan

πŸ™ Acknowledgments

πŸ“Š Skills Highlighted

Machine Learning & AI

  • Prompt Engineering, RAG, LangChain, LlamaIndex, LangGraph
  • Multi-Agent Systems (Autogen, CrewAI, OpenAI Agents)
  • NLP (Sentiment Analysis, NER), Computer Vision (YOLOv8)
  • XGBoost, Random Forest, SVM, KNN
  • Transformers, Hugging Face, PEFT/LoRA

Full Stack Development

  • Frontend: React, Next.js, TypeScript, JavaScript
  • Backend: Python, Django, FastAPI
  • Databases: PostgreSQL, MySQL, MongoDB, Neo4j
  • Vector DBs: Qdrant, Pinecone

DevOps & Tools

  • Git, GitHub Actions, Docker, Linux
  • AWS, Jupyter, VS Code, Postman
  • Automation: Zapier, Make.com, n8n

πŸŽ“ Featured Projects

  1. Taxline AI - Invoice Automation Suite with GPT-4o
  2. ResuForge - MCP-Powered Resume Builder
  3. Cold Email Generation Tool - AI-driven sales automation
  4. Formulai - DNA-Based Wellness Platform
  5. MCQ-Based Exam Prep System - AI-powered adaptive learning
  6. ShopAI - E-Commerce with AI Recommendations

⭐ Star this repository if you found it helpful!

Made with ❀️ and β˜• by Muhammad Tahir Kleem

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors