Satish Rajnale
Product Case StudyVisit Live Product

TwoLines

Intimate Shared Space for Couples · Real-Time Canvas, Rituals & Offline Sync

A consumer mobile application designed for two partners to share low-friction emotional rituals, real-time collaborative drawing, and private media. Built with React Native (New Architecture), Expo Router, Supabase Realtime, and RevenueCat subscriptions, with resilient offline stroke queuing and non-recursive RLS security.

TwoLines showcase
Status
Shipped to App Store · iOS & iPad
Role
Lead Mobile & Product Engineer
Timeline
2025 – 2026
Ownership
Complete mobile architecture, real-time sync, offline queues, RLS security, and App Store release
Primary Technologies
React NativeExpoSupabasePostgreSQLRevenueCatTypeScriptWebSockets
Table of Contents
  1. 01 — Product Context: The Need for Intimate Micro-Rituals
  2. The TwoLines Value Proposition
  3. 02 — Target Audience & Market Landscape
  4. Audience Segments
  5. Competitor Comparison
  6. 03 — Product Walkthrough: Core User Journeys
  7. 04 — Mobile Architecture & Synchronization Engine
  8. 05 — Deep Engineering Challenges
  9. 06 — Testing, Verification & Platform Readiness
  10. 07 — Monetization & Distribution Strategy
  11. Business Model
  12. 08 — Lessons & Next Steps
  13. 09 — Related Case Studies & Technical Writing

Most couples communicate throughout the day using transactional messaging apps like WhatsApp or iMessage. While these tools excel at logistical coordination ("Can you pick up groceries?"), they create an unintended side effect: emotional connection gets buried beneath administrative chatter.

On the other end of the spectrum, relationship wellness apps like Paired require 10 to 15 minutes of structured relationship therapy courses—creating cognitive friction that leads to user burnout and churn.

I built TwoLines to create an intimate, tactile digital space for couples. Released publicly on the Apple App Store, the application provides pairs of partners with low-friction shared micro-rituals: a simultaneous real-time drawing canvas (DuoDraw), double-blind daily connection questions, voice notes, audio love letters, and shared moods.

App Store Release
v5.2.1
Production Build 18
Live on iOS & iPadOS
Architecture
React Native
New Architecture Enabled
TurboModules & Fabric Renderer
Offline Resilience
100%
Append-Only Stroke Queue
Zero drawing loss on disconnect
Isolation Security
Non-Recursive
PostgreSQL Row-Level Security
Enforces double-blind reveals

01 — Product Context: The Need for Intimate Micro-Rituals

Relationships in the modern world face a unique challenge: partners are physically separated for 8 to 12 hours a day due to work, travel, or long-distance arrangements.

During these hours, couples crave emotional touchpoints. However:

  1. Phone and video calls require synchronized schedules and high cognitive commitment.
  2. Text messaging is optimized for speed and utility, stripping away warmth and playfulness.
  3. Clinical therapy apps feel like "relationship homework." Users download them with good intentions, but drop off after a week because filling out 20-minute compatibility surveys feels clinical.

The TwoLines Value Proposition

TwoLines focuses on shared micro-rituals that take less than 90 seconds to complete:

  • DuoDraw: A collaborative live canvas where you can draw together simultaneously or leave a quick doodle for your partner to see when they wake up.
  • Double-Blind Daily Questions: A daily prompt where neither partner can read the other's answer until both have submitted theirs.
  • Love Letter Composer: Expressive audio and text letters with custom unwrapping animations.
  • Mood Sharing & Little Wants: Ambient emotional awareness and shared wishlists.

02 — Target Audience & Market Landscape

Audience Segments

  1. Long-Distance Couples (LDR): Crave tactile, real-time presence across time zones. Collaborative drawing and voice notes bridge physical distance without requiring scheduling.
  2. Busy Co-Habitating Professionals: Working demanding schedules who need 60-second rituals to feel emotionally connected throughout the workday.
  3. New Couples Establishing Habits: Looking for playful, low-pressure conversation starters to discover each other's perspectives without clinical therapy framing.

Competitor Comparison

Market & Competitor Research

Competitor research conducted across Apple App Store and public product listings as of October 2026.

DimensionPairedAgapéBetweenTwoLines (This Project)
Product FocusRelationship therapy & clinical coursesMinimalist daily reflectionLegacy couple messengerPlayful, tactile creative space
Key MechanismTherapist-led quizzes & audio guidesSingle daily text promptText chat, calendar, photo albumLive collaborative drawing, blind Q&A, audio letters
Time Investment5–15 minutes/day~1 minute/dayContinuous messaging30–90 seconds per ritual
Real-Time InteractionAsynchronous onlyAsynchronous onlyChat messagesSimultaneous real-time drawing & presence
Visual Polish & AdsPolished, aggressive paywallsClean, minimalAd-heavy on free tier, dated UIDark & warm intimate theme, zero third-party ads
Pricing$14.99/mo or $74.99–$99.99/yr$14.99/mo or $59.99/yrFree (ads) or ~$4.99/moRevenueCat subscriptions (Monthly & Annual)

03 — Product Walkthrough: Core User Journeys

TwoLines Mobile Interface & Experience

TwoLines DuoDraw Collaborative Canvas
DuoDraw Collaborative Canvas

Real-time multi-user drawing canvas with shared color palettes, stroke interpolation, and background templates.

TwoLines Love Letter Composer
Love Letter Composer

Intimate multimedia composer for letters, audio recordings, and surprise unwrapping animations.

TwoLines Mood Tracker
Real-Time Mood Sharing

Ambient emotional presence widget allowing partners to signal energy levels and feelings throughout the day.

TwoLines Question Categories
Double-Blind Daily Rituals

Categorized daily connection prompts with non-recursive RLS enforcement ensuring answers remain hidden until both respond.

TwoLines Voice Notes
Voice Moments & Notes

Encrypted audio recordings streamed directly through Supabase Storage with custom waveform playback.

TwoLines Music & Moments
Shared Moments & Music

Shared relationship milestones and song recommendations integrated into the couple's private timeline.


04 — Mobile Architecture & Synchronization Engine

TwoLines is built on React Native and Expo Router, backed by Supabase for authentication, real-time channels, and PostgreSQL persistence:

TwoLines Collaborative Canvas & Offline Sync Engine
  React Native / Expo Client (iOS & Android)
    │
    ├── UI Layer: Gesture Handler + Skia Canvas + Audio Player
    │
    ├── Canvas Sync Engine (useDrawingSync)
    │     ├── Optimistic Local Stroke Buffer (Immediate rendering)
    │     ├── Partner Cursor & Point Interpolation
    │     └── Connection Manager (NetInfo listener & reconnect loop)
    │
    ├── Offline Recovery Layer (OfflineStrokeQueue)
    │     ├── Local AsyncStorage queue (@twolines_offline_strokes_)
    │     └── Non-destructive batch replay on reconnect
    │
    └── Subscription Engine (RevenueCat SDK + In-App Paywalls V2)
                │
                ├── WebSocket (Realtime Sync & Presence)
                ├── HTTPS REST (PostgreSQL Operations)
                ▼
  Supabase Infrastructure
    ├── Authentication (Apple Sign-In & Supabase Auth)
    ├── Supabase Realtime (Workspace-scoped broadcast channels)
    ├── Supabase Storage (Encrypted audio notes & photos)
    └── PostgreSQL Database
          ├── workspaces (Pairing User 1 & User 2)
          ├── canvases & canvas_strokes (Timestamp-ordered strokes)
          └── Non-Recursive RLS Policies (Enforces double-blind answers)
                │
                ▼
  Apple StoreKit & RevenueCat Gateway
    └── Server-side receipt validation & auto-renewing subscriptions

05 — Deep Engineering Challenges

01

Real-Time Dual-User Collaborative Canvas Synchronization

Mobile Architecture · WebSockets · React Native

The Problem & Root Cause

Engineering Lesson

For collaborative mobile applications, never tie local UI rendering to network round-trips. Render locally first, stream compressed coordinate deltas for live presence, and commit the finalized vector path asynchronously.
02

Resilient Offline Stroke Queuing & Reconnection Reconciliation

Offline-First · Data Integrity · AsyncStorage

The Problem & Root Cause

Engineering Lesson

Offline resilience is not a toggle; it is a data model decision. If you treat state as an append-only log of immutable events (strokes) rather than an editable document, offline reconciliation becomes deterministic and painless.
03

Resolving Complex App Store Review Rejections (Guidelines 5.1.2 & 3.1.2)

App Store Compliance · Privacy · RevenueCat

The Problem & Root Cause

Engineering Lesson

Navigating Apple App Store guidelines requires deep alignment between third-party SDK behavior (RevenueCat, Firebase), App Store Connect metadata, and in-app typography. Never guess at Apple guidelines—audit the exact data flows and present clear, factual reviewer documentation.
04

Non-Recursive RLS Policies for Double-Blind Game Answer Isolation

PostgreSQL · Security · Row-Level Security

The Problem & Root Cause

Engineering Lesson

PostgreSQL Row-Level Security is an incredibly powerful multitenant guard, but self-referential rules must be isolated into dedicated helper functions to prevent catastrophic planner recursion.

06 — Testing, Verification & Platform Readiness

Verified Implementation

Verification evidence based on automated test suites in services/tests/ and EAS production build profiles in eas.json.

  • Automated Isolation Suites: Unit and integration tests verify workspace membership boundaries, ensuring no data leakage between different couple workspaces.
  • EAS Build Pipelines: Configured with distinct development, preview, and production profiles for iOS and Android. Builds run with React Native New Architecture enabled.
  • In-App Purchase Testing: Verified through RevenueCat sandbox environments, testing subscription renewals, billing grace periods, and cross-device entitlement synchronization.

07 — Monetization & Distribution Strategy

Business Model

  • Subscription Architecture: Built around RevenueCat auto-renewing subscriptions with a 7-day free trial, offering Monthly ($9.99/mo) and Annual ($59.99/yr) plans.
  • Couple-Level Entitlement: When one partner purchases a subscription, the entitlement unlocks premium features for the entire workspace, so both partners enjoy the benefits without paying twice.
  • Organic Viral Loop: A user cannot experience TwoLines alone; they must invite their partner. Every onboarded user inherently brings a second active user through a personalized pairing code or QR scan.

08 — Lessons & Next Steps

  1. Consumer mobile demands obsessive attention to perceived latency. Users forgive complex backend workflows taking 3 seconds, but they will immediately abandon a drawing canvas if a finger stroke lags by 100 milliseconds.
  2. App Store compliance is an engineering discipline. Navigating privacy declarations, App Tracking Transparency, and subscription pricing prominence requires deep technical understanding of SDK network behavior.
  3. Next Priorities:
    • Launch native iOS Home Screen Live Activities and Interactive Widgets for real-time doodle previews.
    • Roll out Android public Play Store availability.
    • Expand interactive mini-games on top of the collaborative canvas.

Engineering Engagement

Building a Real-Time Mobile App with Subscriptions or Offline Sync?

I build cross-platform mobile apps using React Native and Expo, specializing in low-latency collaborative features, resilient offline queues, and clean App Store / RevenueCat monetization.

SR

Satish Rajnale

Senior AI Product Engineer · Full-Stack & Systems Architect

I help early-stage founders and engineering teams build reliable AI products, production-ready full-stack applications, and durable backend architectures. My focus is on the complete delivery lifecycle: from customer discovery and system design to robust implementation, evaluation, and release.