Inspiration
Online Boutique gave us a solid foundation for understanding microservices, but it felt like something was missing, how could I show the leap from a demo app to something that feels alive and truly helpful? I imagined shoppers being able to chat, speak, or share photos, making the whole experience feel personal and fun. That spark of curiosity led us to build an “AI brain” for the Boutique: a team of smart agents working behind the scenes, each focused on a different part of the shopping journey, all coordinated to help the user seamlessly.
What it does
DokkanAI is the friendly conductor orchestrating the Boutique microservices behind the scenes. Instead of just code, it introduces three intelligent agents, each with their own personality:
- Product agent for discovery and recommendations
- Shopping agent for cart management and upselling
- Fulfillment agent for order tracking and support
The orchestrator routes user requests—whether typed, spoken, or image-based—to the right agent. Users can ask for gifts under a price point, add items via voice, search by photo, or check shipping status. Behind the scenes, the agents call existing Boutique APIs, but in a way that feels like chatting with an assistant.
How I built it
I started from the Cookiecutter Django template and added new apps for each agent plus an orchestrator app to route requests. Each agent combines a lightweight LLM planner with tool functions that call Boutique services. I used Vertex AI where available, but also built fallbacks so everything runs locally in development. Redis stores session state, Docker Compose handles local setup, and Kubernetes manifests plus Terraform scripts target deployment on GKE. For multimodal support, we added audio transcription, image analysis hooks, and standardized payload handling.
Challenges I ran into
- Service orchestration: Making synchronous HTTP calls between services was straightforward, but scaling and error handling required extra care.
- Multimodality: Handling audio and image attachments reliably, then cleaning them up after requests, was tricky.
- Duplication: Each agent had similar view logic; refactoring into shared utilities was a balancing act during a hackathon timeline.
- Secrets and security: Ensuring environment variables were handled properly without leaking defaults like “dev-secret” into production.
Accomplishments that I'm proud of
- Built a fully modular multi-agent architecture that plugs into an existing microservices app without modifying its core code.
- Enabled multimodal input (voice, image, text) for a shopping assistant—something rarely seen in hackathon projects.
- Production-ready infrastructure: Dockerized services, Kubernetes manifests, Terraform scripts, and CI hooks for quality.
- Demonstrated real-time order tracking, intelligent cart management, and image-based product discovery in a unified demo.
What I learned
I deepened our understanding of orchestrating multiple AI agents, handling multimodal inputs, and integrating them with microservices. I also learned that building scalable systems requires balancing quick wins (synchronous calls, mock fallbacks) with future-proofing (async IO, retries, observability). Finally, I saw firsthand the value of strong defaults in configuration—security and resilience need to be first-class citizens.
What's next for DokkanAI
I plan to:
- Expand the frontend with a polished UI to showcase voice and image shopping.
- Explore personalization, so DokkanAI learns from user behavior and tailors recommendations.
Log in or sign up for Devpost to join the conversation.