From Chaos to Control: Building a Google Maps–Style AI Command Console with Cloud Run
How I went from a broken UI and failing deployments to a fully functional AI-powered stadium navigation system running on Google Cloud. The Idea What if a stadium dashboard behaved like Google Maps + Iron Man HUD + AI brain? Not just static dashboards… but: Real-time navigation That’s exactly what I built. The System Overview This is not just a frontend project. It’s a full-stack AI system: Architecture Tech Stack The UI: Not Just a Dashboard I rebuilt the UI completely into a spatial AI control hub: Key Features The Real Challenge (Not UI… Logic) At first, the system looked good but failed logically: “I am at West Gate, where is medical station” Root Problem: I introduced 3 layers: Intent Normalization Rule-Based Routing Validation Guard The REAL Battle: Cloud Run Deployment This is where things went from “works locally” → “fails miserably” Problem #1: Container Not Starting Error: “Container failed to start and listen on PORT=8080” Why? Cloud Run requires: A running server app.listen(PORT, '0.0.0.0', () => { Server running on ${PORT}); Problem #2: Frontend Fails on Cloud Run Frontend = static files Result → deployment failure Fix (Frontend Server) I had to wrap frontend inside a server Docker: The Backbone Backend Dockerfile: FROM node:18 WORKDIR /app COPY package*.json ./ COPY . . EXPOSE 8080 CMD ["node", "server.js"] Final Result: Key Learnings Cloud Run is simple… but strict You must follow: Frontend ≠ static anymore in Cloud Run You need: AI ≠ just calling LLM Debugging > Coding What I’d Improve Next Final Thought This project started as: “Let’s build a cool UI” It ended as: “Let’s build a real production AI system” Try It Yourself: https://stadium-frontend-986344078772.asia-south1.run.app/ Conclusion If you’re building AI apps today: Deployment is NOT optional Let’s Connect If you're working on: AI apps Drop a comment or connect with me.
