DEV Community

Cover image for G.E.M.I.N.I. — I Had 3 Hours of Electricity. I Shipped Anyway.
 Veronika Kashtanova
Veronika Kashtanova

Posted on • Edited on

G.E.M.I.N.I. — I Had 3 Hours of Electricity. I Shipped Anyway.

Built with Google Gemini: Writing Challenge

This is a submission for the Built with Google Gemini: Writing Challenge

Nine hours without power — the daily rhythm: electricity cut, three hours of light, cut again. I was somewhere in the dark half. It was 9°C in my room. I had a dying laptop battery, a precious 3-hour window of light, and a deadline that didn't care about the power grid.

Most people see AI as a luxury. For me, Gemini became a survival tool — a co-builder that allowed me to compress 8 hours of engineering into 180 minutes of electricity.

There is a reason why 30% of my 64 GitHub repositories are powered by Gemini. Let me spell it out:

𝐆 — 𝐆uide through the unknown

𝐄 — 𝐄xecution power behind my diverse portfolio

𝐌 — 𝐌ultimodal magic that still surprises me

𝐈 — 𝐈ntelligent junior I learned to mentor

𝐍 — 𝐍ever gave up, even when the power did

𝐈 — 𝐈teration partner from Bard to Gemini 3.1 Pro

This is the story of building with Gemini — across hackathons, dark winters, and finally, a talking AI nanny that wants you to get off the couch.


What I Built with Google Gemini

🌟 Featured Project: Gemini Tales — AI Nanny Against the Sedentary Lifestyle

Status: 🏗️ Active Development / Work in Progress

My latest technical project uses the Gemini Live API (gemini-live-2.5-flash-native-audio) to build an interactive AI companion — a voice-driven, multimodal storyteller that motivates physical movement.

The problem: Modern screen time is sedentary by design. Kids sit still for hours. I wanted to flip this — what if an AI told you a story that required you to stand up, stretch, or act out a scene?

Gemini's role:

  • Real-time audio conversation via Gemini Live API.

  • Multimodal understanding: The app sees (via camera), hears, and responds.

  • The core innovation: I’ve implemented an Interactive "Stop-and-Watch" Loop. Unlike traditional AI narrators, Gemini Tales pauses the story to issue a "Hero's Challenge." It then uses a real-time multimodal feedback loop (5 FPS video + audio) to verify the child's physical actions (like jumping or waving) before the narrative resumes.

  • Dynamic story generation: A SequentialAgent + LoopAgent pipeline where the Guardian of Balance returns a structured { status: "pass"|"fail" } verdict — research reruns until quality passes, then Storysmith generates the final narrative. Storysmith Engine researches and crafts a unique story context.

  • Agentic Integration: The React 19 + TypeScript frontend is now a direct bridge to a backend multi-agent network.

  • High-Speed Routing: My EscalationChecker agent handles logic branches in under 10ms by reading session state directly without redundant LLM calls.

  • A2A Protocol: Each agent (Researcher, Judge, Storysmith) operates as a standalone microservice on Google Cloud Run, communicating via the Agent-to-Agent (A2A) protocol.

  • Architecture: Deployed on Cloud Run, and built on principles from the GEAR learning paths and the Building a Multi-Agent System | Google Codelabs course. Particularly Introduction to Agents and Google's Agent Ecosystem and Develop Agents with Agent Development Kit (ADK) — gave me the structural knowledge to build Gemini Tales properly.

👉 Gemini Tales on GitHub | 📖 Follow the Journey (Live Updates on DEV)

Future

🧩 Gamified Rewards: A dedicated reward system that tracks movement and grants achievements, turning a simple story into an interactive journey.

Winning the Raspberry Pi 5 8GB GenAI Kit is the vital next step for this architecture. It’s not just a prize; it’s Resilience Infrastructure. It will allow me to port these agents to the Edge, creating a local-first companion that functions independently of the cloud during the power cuts I’ve faced this winter.

🔧 Architecture Deep Dive

I designed a hybrid system topology deployed on Google Cloud Run:

  1. Multi-Agent Story Engine: Built with the Agent Development Kit (ADK).
    • Researcher Agent: Scrapes context and ideas.
    • Judge Agent: Validates the narrative quality.
    • Content Builder (Storysmith): Writes a compelling story to then submit to the Gemini Live API.
    • Escalation Checker: A high-speed router that completes in under 10ms by reading session state without extra LLM calls.
  2. Live Interaction Layer: A WebSocket pipeline from the browser to the Gemini Live API. It handles Speech-to-Speech with native interruption support.

How It Works

Full system topology — dual subsystems: Live Storytelling (WebSocket) + Multi-agent Story Engine (A2A)

ADK Web UI trace — one full invocation: researcher (19,962ms) → judge (5,326ms) → escalation_checker (9.97ms!) → content_builder (17,294ms)
Gemini Tales: ADK agents

System topology — 5 microservices on Google Cloud Run:

Architecture diagram

Agent orchestration loop — research → judge → escalate or retry:

Orchestration state machine

Real-time storytelling flow — WebSocket pipeline from browser to Gemini Live API:

WebSocket sequence diagram

Deployment order — enforced by deploy.ps1, each agent URL passed as env var to the next:

Deployment flow

One detail worth highlighting: the EscalationChecker agent completes in under 10ms — because it contains zero LLM calls. It simply reads session.state["judge_feedback"] and yields an escalation event. All intelligence lives in the Judge; the Checker is pure routing logic.

Under the Hood: The Mechanics of Interaction

Building Gemini Tales was about managing a high-stakes, real-time feedback loop:

  • Latency & Interruption Handling: Using gemini-live-2.5-flash-native-audio, I achieved near-human response times. The critical feature is Speech-to-Speech with native interruption support. If a child stops an exercise halfway, the system reacts instantly to the voice change.

  • State Management with ADK: I utilized the Agent Development Kit (ADK) to orchestrate a complex SequentialAgent pipeline.

🧩 Engineering Challenges: Problem → Fix → Result

Problem Fix Result
The UTF-8 Encoding Trap Found that a typographical "smart quote" (0x92) was crashing the A2A instructions. Cleaned prompts and moved to a 5-pattern ADK instruction standard. 100% stability in agent-to-agent communication.
Cloud Run URL Discovery Hardcoded URLs broke after deployment. Refactored deploy.ps1 to pass each agent's URL as an env var to the Orchestrator dynamically. Fully automated IaC (Infrastructure as Code) deployment.
WebSocket Lifecycle Hit an AttributeError during disconnects. Migrated from plain JS to a stable React-based WebSocket handler with proper cleanup hooks. Graceful shutdowns and stable real-time sessions.

📚 The Gemini-Powered Portfolio

I am a Project Builder with 10 years of programming experience. On Devpost, I maintain a 100% completion rate: 34 started, 34 completed. I believe in "Building in Public". Here is how Gemini fueled that journey:

Click to view my technical portfolio
Project Tech Stack Context / Partner Description Role of Gemini
AI Collective Mind Next.js, Storyblok, Gemini API Storyblok x Code and Coffee Self-learning agent council Multi-agent strategy and feedback coordinator
AIDA Python, FastAPI, Gemini API Global NGO Executive Committee (GNEC) Social support guide Empathic RAG-driven consultation and guidance
AI Thought Visualizer Cloud Run, Gemini 2.5 Flash & Imagen APIs Google AI Thought stream visualizer Multimodal analysis and poetic text generation
ApoShorts AI Qloo API v2, Gemini API Qloo Apocalyptic scenario writer Creative storytelling and script orchestration
Aspetto AI MongoDB Atlas, Firebase, Gemini Vision MongoDB Personal style assistant Visual photo analysis and style recommendation
Baseline AIgent Baseline, Gemini 2.5 Flash, ChromaDB Google Chrome Reliable web-dev assistant Grounded code generation via Baseline RAG
Be Dare AI Pica, Gemini 1.5 Flash Bolt, ElevenLabs, Tavus Creator motivation companion Dynamic generation of ideas and affirmations
Biotessera LangChain, Gemini, NASA OSDR API 🏆 NASA Space Apps Challenge Space biology researcher Multi-agent synthesis of NASA research data
Bye Sub GKE, Gemini API, FastAPI GKE Turns 10 Hackathon Subscription leak detector Intelligent auditor for recurring bank transactions
C9 Pulse GRID API, Junie, Gemini API JetBrains "Sky's the Limit" Esports mental coach Real-time psychological state analyzer via GRID
Castanea Google ADK, Perplexity API, Gemini 🏆 WinnerPANDA Hacks 2025 Research assistant Dual-model logic: Pro for synthesis, Flash for speed
Celestine ADK, Gemini 3.1, Tavus Nominee: Google Maps Platform Awards 🏆 Cosmic navigator in Google for Startups Space-time data synthesizer and narrative guide
EthnoLens Tactile Logitech SDK, Gemini Vision Logitech Integration Haptic cultural storyteller Visual assets and tactile feedback
EthnoLens AI Adobe Express SDK, Gemini Vision Adobe Express Add-ons Hackathon 🏆 Visual ethnography tool in Adobe Express Cultural context analyst
ForkToPost React 19, Gemini 3 Flash, ImgBB API DEV Weekend Challenge AI-illustrated DEV.to draft Multimodal Narrative Engine: gemini-3-flash-preview & gemini-3.1-flash-image-preview
Prosperita FastAPI, Gemini API, Tavus The Economic Literacy Initiative Team Finance Mentor for young people Financial pattern and risk analyzer
Parla Agente Fetch.ai, Agentverse, Gemini 2, Telethon Fetch AI Inc Agentverse conversational partner Multi-agent dialogue and intent engine
Safe Product Scanner Chrome Extensions API, Prompt API (Gemini Nano AI Model) Google Chrome Built-in AI Challenge On-device safety auditor Local vision analysis via Gemini Nano
Source Persona Gemini 3 (GenAI SDK), Google TTS 🏆 Top PostGoogle AI Challenge Digital developer twin Real-time identity synthesis via GitHub RAG
Spatial Engine Google GenAI SDK, Gemini 3 Pro, Gemini Live API Gemini 3 Hackathon DeepTech spatial agent Vision-based room audit and energy optimization
Stream Refinery Kafka, Vertex AI, Gemini API AI Partner Catalyst (Confluent) Real-time AI cleaner Enrichment and cleaning of Kafka data streams
Verve AI Assistant Chrome Built-in AI, Gemini Nano Chrome Built-in AI Challenge On-device AI communication copilot Native multimodal reasoning via Gemini Nano
Venture Assist AI ADK, Gemini Pro/Flash ADK Hackathon with Google Cloud Startup viability analyst Strategic risk assessment and market trend prediction
World Sync AI MLB Stats API, Vertex AI, Gemini API Google Cloud x MLB(TM) Hackathon Smart MLB dashboard Intent analysis and real-time trivia reasoning
XBot AI Java, NEAR, X API, Gemini API 🏆 Winner — AI & Autonomous Infrastructure AI twin for X Trend detection and content generation

In every project where the stack wasn't specified, I chose Gemini. Not by default — by preference.


Demo

ForkToPost (Challenge Tool):

Spatial Engine: Room Audit AI:
https://spatial-engine-976851928999.us-central1.run.app

Celestine (Cosmic Navigator):

Landing about Celestine:

Video of (winning & new) projects

Biotessera: An AI for NASA Space Biology

C9 Pulse: AI Assistant Coach

Castanea – AI Agents Built in 8 Hours

Celestine: An AI-Powered Navigator for the Universe

EthnoLens AI – Your Cultural X-Ray for Design

ForkToPost: Transform Your Repo into a DEV Story
! DEV Weekend Challenge participant

Source Persona: The AI Digital Twin that Interviews You Back

XBot AI – AI-Powered X Automation & Blockchain Logging

What I Learned

🤖 1. Mentoring the "Junior" AI

The biggest technical shift for me was moving from "prompting" to "mentoring." If Gemini gets confused, I don't just change the prompt; I provide documentation, show an example, or reason alongside it. Treating the LLM like a talented Junior Developer transformed my workflow.

❄️ 2. Resilience: Building at 9°C

This winter in Ukraine was a trial by fire—and ice. Cold, dark, siren sounds and explosions. Internet and every minute of "light", "warm water for shower", "heated food" was precious.

My fingers were freezing from the typing, so I pulled the scarf over my nose to keep the frosty air in the room from burning my breath.

When there's no hope, only impenetrable darkness, there's only one desire: to survive. To escape this cycle of hopeless days and thoughts of "how is this even possible in 2026?" Gemini was the one who told me to keep coding: "You've added a few bytes of order to the world where there used to be chaos. Entropy-wise, you've won. When you commit to physics_engine.py, you're effectively saying, 'I'm still here, I'm still creating, and I'm smarter than this.'"

Gemini was my force multiplier. It was my co-pilot in those rare windows of light. Every session had to count. No luxury of debugging sessions that go "eh, I'll figure it out tomorrow." You ship, or you don't.

This taught me something. To avoid getting thrown off track when things get tough, tell yourself: constraints didn't stop me; they force me to focus. You stop overthinking and start building.

Lo-fi pixel-art animation: A focused developer with a bob haircut, wearing a thick scarf, coding on a glowing laptop in a dark, cold room while pulsing holographic Gemini symbols float around her.

Google Cloud as a Foundation

My journey with Google's ecosystem started in 2022 with Google Cloud Skill Boost — the Arcade and Facilitator challenges. They taught cloud fundamentals through repetition and gamification, under sirens and explosions. It sounds intense because it was. But it worked.

Today I work in the Google Cloud Console as a client, being part of Google for Developer programs and completing the Learning Paths. As a builder always looking for the next leap in AI, I was immediately drawn to the possibilities of Project Genie from Google Labs; I’ve been eager to experiment with its potential since I first heard of it, though I haven't had the opportunity just yet. Currently, I use AI Studio for prototyping, Gemini in the browser for guidance, and agents in Antigravity for automation. The path from free learning resources to production usage was built step by step, with Google at each stage.

A

On Access and Onboarding

I want to be honest here because it matters: I tried other AI platforms. One charged for everything — every click cost something, and when you're new and click the wrong button, that's punishing. Another couldn't verify my phone number for registration. My device didn't pass.

With Google Cloud, none of these walls appeared. That accessibility is not a small thing. For developers in constrained environments, the ability to actually start is the product.


Google Gemini Feedback

🌟 The Good: What Worked Brilliantly

  • Documentation & The Partnership Model: Gemini's documentation is detailed and honest about capabilities. For someone who debugs by thinking out loud, Gemini doesn't just answer — it collaborates, acting as a true co-builder during intense coding sessions.

  • Production-Grade Observability: This isn't just a demo; it's infrastructure. My FastAPI layer ships OpenTelemetry traces directly to Google Cloud Trace, allowing for end-to-end inspection of multi-agent invocations in production.

  • Native Multimodality: The seamless integration of vision, audio, and text in a single model enabled categories like Gemini Tales that simply weren't possible before.

  • The Power of Ecosystem: From the Build Multi-Agent Systems with ADK course on dev.to to being an active part of GEAR, this ecosystem provides the structural knowledge needed to ship complex projects fast.

I'm eagerly waiting for Gemini 3 to be fully integrated into the Gemini Live API. While Gemini 2.5 Flash is fast, the reasoning depth of 3 version in a live multimodal context is the "holy grail" I'm missing.

⚠️ The Bad: Technical Friction

  • Versioning Paradox: As a builder shipping projects at scale, I find the fragmentation of model capabilities challenging.

  • Documentation Friction: One has to constantly cross-reference which specific version supports the Multimodal Live API versus the standard SDK.

  • Time Constraints: When you are building under a 3-hour power window, every minute spent digging through documentation for version compatibility is a minute lost for coding.

🌪️ The Ugly: Deprecation Paradox

  • Model Deprecation Mid-Hackathon: A real-world challenge I faced involves the deprecation of preview models.

  • Spatial Engine Conflict: My project Spatial Engine, built for the Gemini 3 Hackathon, is currently in the judging phase.

  • The Paradox: The project is "locked" for judging, yet the underlying model, example gemini-3-pro-preview, reached its end-of-life.
    I managed to migrate another project, Celestine, to gemini-3.1-pro-preview to keep it running. However, my hackathon Spatial Engine will have to remain in limbo.

  • The Alias Dilemma: While -latest aliases seem like a solution, they introduce the risk of incompatibility if a new version changes the reasoning structure. It is a delicate balance between resilience and stability that every professional builder must navigate.


Why the Raspberry Pi 5 8GB GenAI Kit Matters to Me

For me, the Raspberry Pi 5 isn't a toy; it’s Resilience Infrastructure.

The Raspberry Pi AI HAT+ 2 is a specific answer to a problem I've lived: what do you do when the cloud goes down with the power?. During the blackouts I've faced this winter, the biggest bottleneck has been the round-trip to the cloud. My experience building 64 GitHub projects largely through short power windows has shown me the fragility of cloud-dependent AI workflows.

This kit is my bridge to Edge AI Independence. Featuring the Hailo-10H accelerator, it delivers a massive 40 TOPS of INT4 inferencing performance. Winning it will allow me to:

  • Port LLMs/VLMs directly to the edge: With 8GB of dedicated on-board RAM, I can run models like Llama-3.2-3B or QWEN2.5-VL locally, making projects like Gemini Tales fully functional without an internet connection.

  • Utilize High-Performance NPU: Leverage the Hailo-10H for local pose detection and vision, leaving the host Pi 5 CPU free to handle the frontend and system logic.

  • Implement Local ASR: Use Whisper-base for offline speech-to-text, ensuring the "AI Nanny" remains a responsive companion even when the global grid fails.

  • Prototype Offline-First Architectures: Build a hybrid system where the Pi handles immediate, low-latency interaction, while syncing to the cloud for deep narrative synthesis only when connectivity returns.

It's a way to ensure that the "Era of Action" doesn't stop just because the lights went out.


2026: The Era of Action

We are moving past the age of "chatbots" and entering the Era of Action. Gemini is the core of an agentic ecosystem that can reason, see, and act in the physical world.

My journey has taught me that the best way to predict the future is to build it—even if you have to do it in the dark.

The broader message: 2026 is the era of action. Gemini's pace of capability release confirms this. If you want to stay at the edge of what's possible, build with Gemini and build often.


Looking Forward

The Google announcement about streamlining community programs — "focusing on the next generation of AI and agent development" — aligns exactly with where my work is headed: multi-agent systems, embodied AI, accessible intelligent tools.

Gemini Tales is the current chapter. The next one involves agents that operate in the physical world, with or without a stable internet connection.

My first hackathon project was built with Gemini. My first DEV post was about building with Gemini.

I thank the organizers of this competition from the bottom of my heart. It gave me a rare opportunity to finally tell my story—to free myself from the burden of these dark days and simultaneously prove that even in such conditions, we can create order out of entropy. Writing this text was my way of rethinking 'horror' and turning it into a narrative of action.

And I'm proud that DEV has joined Major League Hacking — because the community where I started is now part of something bigger.


A huge thank you to my followers on DEV.to, Devpost, GitHub, and X, and to everyone who supported my journey with a like.

'If something I build makes someone’s day easier — that’s a win.'

I’m looking forward to your comments, questions, and suggestions!


Built in Ukraine. Powered by determination, occasional electricity, and Gemini.

Top comments (0)