Min Yi
Back to projects

Nomo News Bot

An AI news companion I designed, built, and run in production.

Node.jsTelegram Bot APIGroq LLMNewsAPITavilyOracle CloudPM2

Role: Product, engineering, and operations (solo)

The problem

My friends and I (a group we call Market Kakis) wanted to keep up with markets, world, and tech news without drowning in noise or doom scrolling. General news apps hand you everything and prioritize nothing, so staying informed felt like a chore.

The idea

Deliver a small, curated, AI summarized digest inside a chat app people already open all day. No new app to install and no new habit to build. The news comes to you, in Telegram, on a calm daily rhythm.

What it does

  • A morning briefing that summarizes the day's key stories
  • A daily poll and a short quiz that make the news interactive
  • A swipeable news reader you tap through, refreshed several times a day
  • A free text question feature that answers current questions using live web search

Product decisions and tradeoffs

  • Met users where they already are (Telegram) instead of building a separate app, and cut an earlier web reader to keep the experience purely in chat and cheaper to run
  • Designed the daily schedule as an experience: briefing, then poll, then quiz, then readers, rather than a firehose of alerts
  • Built entirely on free tiers, which forced real prioritization. To stay under a 100 call per day news quota, I combined three separate queries into one and added caching
  • Designed for graceful degradation: when the AI hits rate limits, the bot silently falls back to simpler content so users are never left with a blank screen
  • Migrated hosting from a paid platform to Oracle Cloud's free tier to cut cost to zero, and learned production operations along the way (process management, auto restart on reboot, remote deploys)

Outcome and learnings

Nomo has run daily for a real audience since launch. Building it taught me to treat cost and quotas as product constraints, to scope ruthlessly, and to design for failure so the experience stays intact. It gave me a concrete, shipped example of the product thinking I want to bring to a team.

What is next

Add lightweight usage analytics so decisions are driven by data rather than guesses, and broaden the range of trusted sources.