Skip to content

Repository files navigation

Portfolio

The personal portfolio of Aitezaz Sikandar. Built with Next.js 15, GSAP, and Lenis, it features scroll-driven animations, animated page transitions, smooth scrolling, and a working contact form.

Live Site: aitezazdev.vercel.app

Features

  • Scroll-driven GSAP animations using ScrollTrigger
  • Smooth scrolling powered by Lenis
  • Animated page transitions using next-transition-router
  • Custom cursor with interactive hover states
  • Film grain overlay, marquee strips, and dynamic interactive background
  • Contact form backed by Nodemailer with validation and spam checks
  • Vercel Analytics and Google Analytics integration
  • Fully typed with TypeScript

Getting Started

Prerequisites: Node.js 18+ and npm.

git clone https://github.com/aitezazdev/Portfolio.git
cd Portfolio
npm install

Create a .env.local file in the root:

GMAIL_APP_PASSWORD=your_gmail_app_password
NEXT_PUBLIC_GA_ID=your_google_analytics_id

Start the development server:

npm run dev

Scripts

Command Description
npm run dev Start development server
npm run build Create production build
npm run start Serve production build
npm run lint Run ESLint
npm run lint:fix Run ESLint with auto-fix
npm run format Format code with Prettier

Project Structure

src/
├── app/
│   ├── api/
│   └── projects/
├── components/
│   ├── canvas/
│   ├── project/
│   ├── providers/
│   ├── sections/
│   ├── shared/
│   └── ui/
├── lib/
└── utils/

Contributing

Contributions are welcome. See CONTRIBUTING.md for guidelines.

License

Licensed under the MIT License. See LICENSE for details.

Releases

Packages

Used by

Contributors

Languages