A modern portfolio website showcasing Kelechi's skills and projects, built with Next.js, React, and Tailwind CSS.
- Responsive design for all devices
- Dark and light theme support
- Interactive UI components
- Project showcase with Bento grid layout
- Skills visualization with animated progress bars
- Multi-step contact form
- Smooth animations and transitions
- Next.js for server-side rendering and routing
- React for UI components
- TypeScript for type safety
- Tailwind CSS for styling
- Framer Motion for animations
- next-themes for theme switching
- Radix UI for accessible components
First, clone the repository:
git clone <repository-url>
cd portfolioInstall dependencies:
npm installRun the development server:
npm run devOpen http://localhost:3000 with your browser to see the result.
npm run build
npm run start/src/app- Next.js app router pages/src/components- React components/src/components/ui- Reusable UI components/src/lib- Utility functions and shared code
To customize the portfolio for your own use:
- Update the personal information and projects in the component files
- Replace the logo and favicon
- Adjust the color scheme in Tailwind config if desired
- Add or remove sections as needed
To enable the contact form to send real emails:
-
Create an account at EmailJS
-
Create a new Email Service (Gmail, Outlook, etc.)
-
Create an Email Template with the following variables:
from_name: Sender's namefrom_email: Sender's emailmessage: The message content
-
Get your credentials and update the following files:
-
In
src/components/Contact.tsx:const EMAILJS_SERVICE_ID = "your_service_id"; const EMAILJS_TEMPLATE_ID = "your_template_id"; const EMAILJS_PUBLIC_KEY = "your_public_key";
-
In
src/app/layout.tsx:emailjs.init("your_public_key");
-
-
Test the contact form to ensure emails are being sent correctly.
npm run devOpen http://localhost:3000 with your browser to see the result.
npm run buildnpm run start