A modern, interactive portfolio website built with Next.js, React, and TypeScript, featuring AI-powered components and smooth animations. The site includes an intelligent chat assistant powered by Google's Gemini AI model.
- 🤖 AI Chat Assistant - Interactive chat powered by Google Gemini
- 🚀 Interactive Code Typing Animation - Dynamic code display with syntax highlighting
- 💻 Responsive Design - Optimized for all devices from mobile to desktop
- 🎨 Modern UI/UX - Clean, professional interface with smooth animations
- 🤖 AI Integration - AI-powered features and chat assistant
- 📱 Mobile-First Approach - Fully responsive with tailored mobile experience
- 🌙 Dark Mode - Sleek dark theme for optimal viewing
- ⚡ Performance Optimized - Fast loading and smooth transitions
- Framework: Next.js
- Language: TypeScript
- Styling: Tailwind CSS
- Animations: Three.js
- Code Highlighting: Prism React Renderer
- UI Components: Custom components with shadcn/ui
- AI Model: Google Gemini
- Deployment: Vercel
-
Clone the repository
git clone https://github.com/lucy-sees/nu-portfolio.git cd nu-portfolio -
Install dependencies
npm install # or yarn install # or pnpm install
-
Set up environment variables
# Create a .env.local file with the following variables: RESEND_API_KEY=your_resend_api_key GOOGLE_API_KEY=your_gemini_api_key -
Start the development server
npm run dev # or yarn dev -
Build for production
npm run build # or yarn build
app/- Next.js app directory and API routescomponents/- React componentslayout/- Layout components (header, footer, etc.)sections/- Page sections (home, about, etc.)ui/- Reusable UI components
data/- Static data and contenthooks/- Custom React hookslib/- Utility functionspublic/- Static assetsstyles/- Global styles
The following environment variables are required:
RESEND_API_KEY- API key for email serviceGOOGLE_API_KEY- API key for Gemini Pro AI (required for chat assistant)
Lucy W. Mwangi
- Website: Lucy
- Email: lucy.mwangi.dev@gmail.com
- GitHub: @lucy-sees
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Lucy W. Mwangi