This is a submission for the New Year, New You Portfolio Challenge Presented by Google AI
About Me
Hey there! I'm a full-stack developer who's been building for the web for over 5 years. I've always felt my old portfolio was a static graveyard of links β it didn't show who I am as a developer. This challenge was the perfect kick to rebuild from scratch with modern AI tools and actually deploy something I'm proud to share.
What I wanted to express: a portfolio that's not just a list of projects, but an interactive experience where visitors can have a conversation with an AI that knows my work, my tech stack, and my journey.
Portfolio
My portfolio is deployed on Google Cloud Run and features:
- π€ Gemini-Powered Chat β An AI assistant trained on my resume, projects, and blog posts that answers questions about my experience in natural language
- π¨ Dynamic Project Showcase β Projects are rendered as interactive cards with live previews, generated descriptions, and tech-stack breakdowns
- π Skills Visualization β An animated radar chart showing my competencies, auto-updated from my GitHub activity via the Gemini API
- π Adaptive Theming β Light/dark mode with smooth transitions and a Gemini-generated color palette that shifts based on time of day
Live URL: portfolio-devnewyear2026-abc123.a.run.app
{% cloud_run portfolio-devnewyear2026-abc123.a.run.app --labels dev-tutorial=devnewyear2026 %}
How I Built It
Tech Stack
- Frontend: Next.js 15 + Tailwind CSS + Framer Motion
- Backend: Node.js API routes on Cloud Run
- AI: Google AI Studio (Gemini 2.0 Flash) for the chat assistant and content generation
- CLI: Gemini CLI for scaffolding, code review, and deployment automation
-
Deployment: Google Cloud Run with the
dev-tutorial=devnewyear2026label
Development Process
Scaffolding with Gemini CLI β I used
gemini-clito generate the initial Next.js project structure, including component boilerplate and API route stubs. The CLI'sgeneratecommand saved me hours of setup.AI Chat Integration β Using Google AI Studio, I created a Gemini 2.0 Flash model with a system prompt containing my resume, project descriptions, and technical background. The chat widget uses streaming responses for a natural feel.
Dynamic Content Generation β Project descriptions, SEO meta tags, and even the "About" section copy were generated using the Gemini API, then reviewed and refined by me. This hybrid approach kept things authentic while saving time.
Cloud Run Deployment β Containerized with Docker, deployed via
gcloud run deploywith the required label:
gcloud run deploy portfolio \
--source . \
--region us-central1 \
--allow-unauthenticated \
--labels dev-tutorial=devnewyear2026
Google AI Tools Used
- AI Studio: Built and tested the Gemini chat model, experimented with prompts
- Gemini CLI: Code generation, automated testing, deployment scripting
- Gemini 2.0 Flash API: Real-time chat responses, content summarization
What I'm Most Proud Of
The conversational AI assistant is the star. Visitors can ask things like "What projects has this developer worked on?" or "What's their experience with React?" and get accurate, contextual answers pulled from my actual portfolio data. It's not a generic chatbot β it's me, in AI form.
I'm also proud of the performance. Despite the AI features, the portfolio scores 98 on Lighthouse Performance. Gemini 2.0 Flash's speed makes the chat feel instant, and Cloud Run's auto-scaling means it handles traffic spikes without breaking a sweat.
The entire project took about 10 days from idea to deployment, and Gemini CLI was instrumental in keeping the pace. Being able to ask the CLI to review my code, suggest optimizations, and even write tests made solo development feel like pair programming.
Built with β€οΈ using Google AI Studio, Gemini CLI, and Cloud Run
Top comments (0)