Skip to content

Case Study

Suumio: AI Companion Journaling App

Role: Solo Full-Stack Developer & Product DesignerDuration: 2025-2026Status: Live - iOS, Android, and web
ExpoReact NativeTypeScriptSupabaseClaude APIStripeEAS

Overview

Suumio is a journaling app where users write with an AI companion of their choice. Each companion has a distinct personality, tone, and specialty - from a grounding therapist-adjacent presence to a playful creative collaborator to a direct analytical thinker. The companion responds to journal entries in character, helping users reflect, process, and stay consistent with their journaling practice.

The app is live with real paying users on iOS, Android, and web - a single Expo codebase deployed across all three platforms.

Scale

32

AI companion personalities

32

Languages supported

4

Billing tiers

iOS · Android · Web

Platforms

Key Features

Companion System

  • ·32 distinct AI companion personalities, each with unique voice and focus area
  • ·Companions respond to journal entries using Claude API - in character, consistently
  • ·Users can switch companions or maintain long-term relationships with a specific one
  • ·Companion context persists across sessions for continuity

Journaling

  • ·Clean, distraction-free writing interface
  • ·Entry history with search and filtering
  • ·Streaks and consistency tracking
  • ·Mood and tag metadata per entry

Billing & Localization

  • ·Stripe billing across four subscription tiers
  • ·Free tier with limited companion interactions per month
  • ·32-language localization with automated translation pipeline
  • ·Locale-aware formatting for dates, numbers, and currency

Screenshots

Companion selection
Journaling interface
Entry history
Companion personalities

Technical Architecture

FrontendExpo, React Native, TypeScript (strict mode) - single codebase for iOS, Android, and web
BackendSupabase (PostgreSQL, Auth, Edge Functions) with Row Level Security
AIClaude API - each companion personality implemented as a distinct system prompt with persistent session context
BillingStripe - four subscription tiers with webhook-driven entitlement management
i18n32 languages with automated translation pipeline
DeploymentVercel (web), EAS (iOS/Android builds and OTA updates)

Technical Highlights

32 distinct personalities at scale

Each companion is a carefully crafted system prompt with behavioral guardrails. The challenge was making 32 feel genuinely different rather than superficially varied - tone, vocabulary, what they reflect back, how they push back.

Context continuity across sessions

Companion memory is summarized and stored per user/companion pair in Supabase, injected at session start. Long-term users get a companion that feels like it knows them.

32-language automated pipeline

Translation pipeline runs via Claude API with a domain-specific glossary per language to keep journal/wellness terminology consistent. Human review for new companion personalities.