Inspiration

I used to think productivity was a solo sport—until the late nights felt too quiet. Aipomo began with a simple, radical question: What if the break became the reward—and the reward was connection? By blending Japan’s character culture with modern AI, Aipomo transforms the Pomodoro technique into a ritual of companionship. It’s not just a timer—it’s a small, human moment in the middle of effort. That moment eases loneliness, supports language practice, unlocks creative flow, and reminds you why you’re showing up today.

What it does

Aipomo is a mobile app for real-time conversations with fully customizable AI characters—2D or 3D, any persona, tone, or speaking style. Three disruptive ideas define the experience:

Break-Only Chat Chats unlock only during the 5-minute break. The UI literally inhales/exhales between focus and rest, making the break a celebration—not an escape.

Affection System (Gentle Gamification) Healthy cycles raise an affection level. Micro-celebrations, subtle animations, and streak moments make consistency feel delightful—never exploitative.

Character Memory & Voice The character remembers your preferences and current arc (study, build, recover). Each break picks up like a conversation with a familiar friend.

Under the hood: Firebase AI + Vertex AI for natural conversation and memory shaping, Firestore/Storage/Remote Config/Analytics for state and iteration, and RevenueCat for seamless tickets/subscriptions.

How we built it

I’m not an engineer. Still, I shipped my first app in 20 days. The reason is a toolchain that felt less like labor and more like collaboration:

Gemini (planning partner): PRD, user journeys, and prompt architecture. It questioned vague assumptions, flagged privacy risks, and helped codify break-only as a sacred rule.

GeminiCLI (force multiplier): Generated Flutter/Node scaffolds, refactored state flows (BLoC/Provider), stitched Dockerfiles, Cloud Run configs, and GitHub Actions—push → deploy.

Gemini 2.5 Flash Lite (in-app): Real-time, low-latency chat. A Gemini-guided summarizer compresses long histories to preserve intent without runaway costs.

This stack didn’t just help me code—it let me design, ship, and iterate without losing creative momentum or safety.

Tech Stack

Frontend: Flutter/Dart cross-platform app (iOS/Android), state managed via BLoC/Provider, with full localization. Backend: Node.js/Express REST API on Google Cloud Run. Firebase Admin SDK for auth, Vertex AI for AI processing, RevenueCat for monetization. Infrastructure: Firebase ecosystem (Auth, Firestore, Storage, Remote Config, Analytics). Dockerized backend on Cloud Run for scalability and cost efficiency.

Challenges we ran into

Securing APIs: prevented key leaks and cost spikes by routing all AI calls through backend. AI quality: prompt engineering and history compression for long conversations. Multilingual support: seamless switching between Japanese and English. Monetization: unified iOS/Android billing via RevenueCat.

Accomplishments that we're proud of

Fully secure backend migration with cost and credential protection. High-quality conversation engine with Firebase AI + Vertex AI. Cross-platform reach, backed by comprehensive security documentation. Flexible monetization with RevenueCat, ready to scale.

What we learned

Cloud Run is a sweet spot for small teams: scale-to-zero economics with production-grade isolation.

LLM safety is product work: guard prompts, rate limits, and human-readable telemetry must ship with features, not after.

State patterns shape behavior: modeling the ritual in BLoC/Provider prevents “just one quick chat” during focus.

Tight Firebase integration shortens the learn-build-measure loop.

Security-first from day one avoids architectural debt—especially around payments and AI traffic.

What's next for Aipomo

Voice interaction: Text-to-speech and speech recognition support. Group chat: Simultaneous conversations with multiple AI characters. Character marketplace: Enable users to share and sell their custom characters. Advanced personalization: ML-driven adaptation of conversation patterns. Public API: Allow third parties to build their own Aipomo characters. Web version: Expand access via browser.

Built With

Share this project:

Updates