I Built an AI-Powered Portfolio That Thinks Like a Recruiter (And Deployed It in Minutes on Kuberns)
What if your portfolio could actually understand who's visiting it?
That's the question I kept asking myself when I started building Chakshita.ai — my personal portfolio for the Kuberns AI Portfolio Hackathon 2026.
Most portfolios are static. They show the same content to everyone — whether it's a recruiter looking to hire, a student looking to learn, or a founder looking to collaborate. That felt like a missed opportunity. So I decided to fix that.
💡 The Idea: A Portfolio That Adapts
The core concept behind Chakshita.ai is simple but powerful — personalization based on who's visiting.
When you land on my portfolio, you can identify yourself as:
- 💼 A Recruiter
- 🎓 A Student
- 🚀 A Founder
And the content adapts. Recruiters see my top projects and availability. Students see my learning journey and tech stack. Founders see my product-thinking and collaboration mindset.
This isn't just a UI trick — it's built around the idea that context matters. The same person looks different depending on who's asking.
🛠️ Tech Stack
Here's what I used to build it:
- Next.js + React — for the frontend and routing
- CSS Modules — for component-scoped styling
- Gemini API — powering the AI chatbot
- Kuberns — for deployment (more on this below)
🤖 The Hardest Part: Setting Up the AI Chatbot
I won't sugarcoat it — the AI chatbot was by far the most challenging part of this build, and it took me over a week to get right.
The idea was to have a chatbot that could answer questions about me — my skills, projects, experience, availability — in a natural, conversational way. Not a generic ChatGPT wrapper, but something that actually knows Chakshita.
Here's what made it hard:
1. Prompt Engineering
Getting the Gemini API to respond as my portfolio assistant (and not just as a general AI) required a lot of iteration. I had to carefully craft system prompts that gave it enough context about me — my skills, my projects, my goals — without making responses feel robotic or templated.
2. Keeping It Grounded
The chatbot needed to stay on topic. Without guardrails, it would happily answer unrelated questions. Adding context boundaries while keeping the conversation natural took multiple rounds of testing.
3. Response Latency
Initial responses were slow enough to feel clunky in a portfolio context where first impressions matter. I had to optimize how I was structuring API calls to keep things snappy.
After a week+ of iteration, the result was worth it — a chatbot that can answer "What are her top skills?", "Is she open to internships?", or "Tell me about her projects" with genuinely useful, personalized responses.
🚀 Deploying on Kuberns: Honestly Easier Than Expected
Here's the part I was most nervous about — deployment.
I've had painful deployment experiences before. Configuring servers, dealing with environment variables, debugging build failures at 2am. So I went into Kuberns with managed expectations.
It was... surprisingly smooth.
The one-click deployment experience on Kuberns was genuinely straightforward. I connected my project, configured the environment variables for my Gemini API key, and the deployment was live.
No server configuration. No Dockerfile wrestling. Just a live URL I could share.
For a project where the portfolio itself needs to be impressive and live, having deployment be the easy part was a huge relief. It meant I could spend more time on what actually matters — the product and the AI features.
Here's my live portfolio: [https://portfolio-website-main-d9ba82b.kuberns.cloud/]

🎯 What I Learned
Building this project taught me a few things I'll carry forward:
On AI integration: Prompt engineering is underrated. The difference between a chatbot that feels like a product and one that feels like a demo is almost entirely in how carefully you craft your prompts.
On product thinking: Features that sound cool need to actually feel useful. The visitor personalization only works because I thought carefully about what each type of visitor actually needs — not just what would look impressive.
On shipping: A portfolio that's live and imperfect beats a perfect one that's still in development. Deploying early gave me real feedback and real motivation to keep improving.
🔮 What's Next
There's still a lot I want to build:
- AI-assisted contact messages — helping visitors draft personalized outreach
- Real-time project filtering based on visitor type
- Analytics on which visitor type engages most
The foundation is solid. Now it's time to make it smarter.
🙌 Try It Yourself
If you're a developer thinking about your portfolio — stop waiting for it to be perfect. Deploy something real, get it live, and iterate.
And if you haven't tried Kuberns for deployment yet, it's worth checking out. For a Next.js + API project like mine, it genuinely removed the deployment headache.
Check out my portfolio: https://portfolio-website-main-d9ba82b.kuberns.cloud/
Participating in the hackathon? Connect with me on LinkedIn — would love to see what you're building.
Built with Next.js, React, and Gemini API. Deployed on Kuberns.
#kubernschallenge #kuberns #aichallenge #webdev #nextjs #AI
Top comments (0)