Personal portfolio website built with Next.js, emphasizing performance, responsive design, and smooth animations.
- Framework: Next.js 16 (React 19)
- Language: TypeScript
- Styling: Tailwind CSS v4,
clsx,tailwind-merge - Animations: Framer Motion
- UI Components: Radix UI (Dialog, Label), Lucide React
- Form Handling: React Hook Form
- Internationalization:
next-intl - Email Delivery: EmailJS, Nodemailer
- Markdown Parsing:
marked
- Fully responsive design using Tailwind CSS.
- Smooth page transitions and micro-interactions with Framer Motion.
- Internationalization support.
- Contact form integration with email delivery.
- Dynamic project showcasing.
Ensure you have Node.js (v20+ recommended) and pnpm installed.
-
Clone the repository:
git clone <repository-url>
-
Navigate into the directory:
cd Portfolio-1 -
Install dependencies:
pnpm install
Start the application locally:
pnpm devThe application will be available at http://localhost:3000.
To create an optimized production build:
pnpm buildTo start the built application:
pnpm startCreate a .env.local file in the root of your project and configure the necessary environment variables required for EmailJS/Nodemailer and any other external services.
# Example environment variables
# NEXT_PUBLIC_EMAILJS_SERVICE_ID=
# NEXT_PUBLIC_EMAILJS_TEMPLATE_ID=
# NEXT_PUBLIC_EMAILJS_PUBLIC_KEY=pnpm dev- Starts the development server.pnpm build- Builds the application for production.pnpm start- Starts the production server.pnpm lint- Runs ESLint to check for code quality.pnpm analyze- Builds the application and analyzes the bundle size.