A futuristic, interactive portfolio featuring a 3D DNA helix visualization and an AI-powered chat widget.
- 𧬠Interactive 3D Model: DNA helix with glowing orbs representing different sections (work, projects, learnings)
- π¬ AI Chat Widget: Powered by Groq API (Llama 3.1) for instant, witty responses
- π¨ Glassmorphism Design: Modern, futuristic UI with purple theme
- π± Fully Mobile Responsive: Touch-friendly gestures and optimized layouts
- β‘ Lightning Fast: Instant AI responses with no cold starts
- π― Interactive Elements: Hover effects, typewriter animations, carousel
- Three.js - 3D rendering and animations
- Vanilla JavaScript - No frameworks, pure performance
- CSS3 - Glassmorphism effects and animations
- HTML5 - Semantic markup
- Node.js + Express - API proxy server
- Groq API - Llama 3.1 (8B) for AI chat
- CORS - Cross-origin support
- Orbitron - Futuristic headers
- Rajdhani - Clean, readable body text
- Share Tech Mono - Monospace tech aesthetic
vibe_site_v2/
βββ index.html # Main landing page with 3D model
βββ work.html # Work experience timeline
βββ projects.html # Projects showcase (coming soon)
βββ learnings.html # Learning artifacts (coming soon)
βββ main.js # 3D model logic and interactions
βββ style.css # Global styles and animations
βββ chat-widget.js # Chat widget frontend
βββ chat-widget.css # Chat widget styles
βββ chat-proxy.js # Backend API proxy (Node.js)
βββ model.glb # 3D DNA helix model
βββ package.json # Node.js dependencies
βββ .env # Environment variables (not in repo)
- Node.js (v16 or higher)
- Groq API key (free at https://console.groq.com)
- Clone the repository
git clone https://github.com/YOUR_USERNAME/portfolio-website.git
cd portfolio-website- Install dependencies
npm install- Set up environment variables
# Create .env file
echo "GROQ_API_KEY=your_groq_api_key_here" > .env- Start the chat proxy server
npm start- Open the site
Open
index.htmlin your browser or use a local server like Live Server
See DEPLOYMENT_GUIDE.md for detailed deployment instructions.
Quick Deploy:
- Frontend: Vercel or Netlify
- Backend: Railway or Render
Fully optimized for mobile devices with:
- Touch gestures (pinch zoom, drag rotate)
- Responsive layouts (768px, 480px breakpoints)
- Touch-friendly buttons (44px minimum)
- Optimized chat widget for small screens
See MOBILE_RESPONSIVE.md for details.
The chat widget uses Groq API with Llama 3.1 for:
- β‘ Instant responses (fastest inference available)
- π― Short, witty answers (1-3 sentences)
- π Free tier: 14,400 requests/day
- π Secure: API key handled by backend proxy
See README_CHAT.md for chat setup details.
- Futuristic Aesthetic: Purple/violet color scheme (#a05eff)
- Minimalist UI: Lowercase text, clean lines
- Interactive Elements: Hover effects, smooth transitions
- Glassmorphism: Blur effects and transparency
- Performance First: Optimized 3D rendering and animations
| Feature | Status | Description |
|---|---|---|
| 3D Model | β Live | Interactive DNA helix with orb navigation |
| Chat Widget | β Live | AI-powered Q&A about work and projects |
| Work Timeline | β Live | Detailed work experience and tech stack |
| Projects Page | π§ Coming Soon | Portfolio of projects |
| Learnings Page | π§ Coming Soon | Essays and learning artifacts |
Edit chat-widget.js:
- Suggested questions array
- Carousel timing
- API endpoint
Edit main.js:
- Camera position
- Orb colors and positions
- Animation speeds
- Touch sensitivity
Edit CSS files:
- Color scheme variables
- Font sizes
- Animation timings
- Mobile breakpoints
Required in .env file:
GROQ_API_KEY=your_groq_api_key_hereGet your free API key: https://console.groq.com/keys
- Start backend:
npm start - Open
index.htmlin browser - Test chat widget functionality
- Test 3D model interactions
- Use browser DevTools responsive mode
- Test on real devices
- Check touch gestures
- Verify chat widget usability
This project is private and proprietary.
Anshul Sahai
- AI/ML Product Manager at Licious
- Email: asahai100@gmail.com
- LinkedIn: anshul-sahai
- X/Twitter: @anshulsaha111
- Three.js community for 3D rendering
- Groq for blazing-fast AI inference
- Hugging Face for open-source models
To update the site:
git add .
git commit -m "Your update message"
git pushAuto-deploys if using Vercel/Netlify! π
Built with π by Anshul Sahai