Rivo

Rivo

Personal finance & investment platform with AI-powered market reports and automated podcast generation.

Year

2026

Role

Software Developer

Company

Hellospace

Stack

React NativeExpoTypeScriptHonoNode.jsPythonFastAPISupabaseRedisLangChain

Overview

Rivo is a personal finance and investment platform that delivers AI-generated daily market reports, audio summaries, and an AI chat assistant — all personalized to the user's risk profile. I led the full-stack development across the mobile app, backend API, admin dashboard, and automation services. The platform includes an adaptive onboarding system that determines each user's investor profile, a real-time AI chat powered by Claude Sonnet, audio report playback with lock screen controls, and an automated podcast generation pipeline running on a Windows Server I provisioned on Azure.

The Challenge

The main challenge was connecting many moving parts into a seamless experience. The mobile app needed to feel fast with smart caching while streaming AI responses in real-time. The backend had to serve localized content across multiple languages with reliable fallback logic. Reports needed to be automatically ingested via webhooks, assigned to the right users based on their risk profile, and optionally turned into podcasts — all without manual intervention. The podcast generation itself required driving Google NotebookLM through browser automation, which meant managing auth sessions, handling rate limits, and running everything on a Windows VM since NotebookLM requires a real browser environment.

Solution

The mobile app is built with Expo SDK 54 / React Native 0.81 with the New Architecture and React Compiler enabled. It features a 3-stage adaptive risk profiling onboarding with a scoring engine that classifies users as Low, Medium, or High risk investors. The AI chat uses real-time SSE streaming powered by LangChain and Claude Sonnet, with conversation windowing that keeps the system prompt plus the last 20 messages for context. Audio report playback runs through react-native-track-player with lock screen controls, preloading, and playback speed cycling. The app uses multi-layer caching with a stale-while-revalidate pattern backed by AsyncStorage with TTL-based expiry.

The backend is a Hono/TypeScript service that handles webhook-driven report ingestion with automatic user assignment by risk profile. Content is stored in multiple languages with a fallback chain resolution system — it tries the requested language first, then falls back through English and Turkish before picking any available version. The AI chat supports conversation windowing and streams responses via SSE.

I provisioned and configured a Windows Server VM on Azure and deployed a FastAPI podcast generation service. It runs an asyncio FIFO job queue that spawns isolated Python subprocesses to drive Google NotebookLM via Playwright browser automation. The server and subprocesses communicate through a JSON Lines stdout protocol for real-time progress reporting. The system includes a preview-before-publish workflow, auto-publish capability, and Telegram bot integration for job monitoring and Google auth expiry alerts. I also set up CI/CD pipelines across both Windows and Linux environments.

The Next.js 16 admin dashboard provides report lifecycle management, real-time podcast job monitoring through a floating widget that polls the Azure service, and full activity audit logging.

I also maintained and improved a Python content automation service (originally built by another developer) that uses yt-dlp and Google Gemini to monitor Turkish finance YouTube channels, extract transcripts, and generate multi-language investor-persona market digests.

Key Features

  • 3-stage adaptive risk profiling onboarding with scoring engine
  • AI chat with real-time SSE streaming (LangChain + Claude Sonnet)
  • Audio report playback with lock screen controls and speed cycling
  • Multi-layer caching with stale-while-revalidate pattern
  • Localized content serving with fallback chain resolution
  • Automated podcast generation pipeline on Azure Windows VM via Playwright
  • JSON Lines protocol for inter-process communication
  • Telegram bot monitoring with auth expiry alerts
  • Admin dashboard with real-time job monitoring
  • CI/CD pipelines across Windows and Linux

Results

The platform is live and delivers personalized financial reports and AI-powered audio content to users based on their risk profile. The podcast generation pipeline runs autonomously on Azure, producing multilingual audio content through NotebookLM automation. The entire stack — mobile app, backend API, admin dashboard, podcast pipeline, and content automation — was developed and deployed as part of the Hellospace team.