Skip to content

Mobile: Companion app — quick capture + search #25

Description

@ajianaz

Description

Mobile companion for quick memory capture and search on-the-go.

Features

  • Quick capture: text, voice, photo -> memory
  • Semantic search over synced knowledge base
  • Offline support (local cache)

Architecture Decision

  • Framework: Flutter (Impeller, Dart) - see analysis below
  • Repo: codecoradev/corin-mobile (org-owned)
  • Backend: Corin Web API (GH#21 prerequisite)
  • Offline: Drift (SQLite ORM) + Dio sync queue

Why Flutter (not Tauri Mobile)

Criterion Tauri 2 Mobile Flutter
Sibung expertise No Yes - Flutter dev
Offline-first ecosystem Primitive (localStorage) Mature (Drift, Isar, Hive)
Camera/Voice plugins Experimental Production-ready
Rendering WebView (limited perf) Impeller (native 60fps)
Mobile ecosystem maturity New (Oct 2024) 8+ years, massive

Tauri mobile code-sharing with desktop is a trap -- mobile UI needs fundamentally different patterns (swipe, FAB, bottom sheets). Real code sharing happens at the backend (Uteke HTTP API), not the frontend.

Prerequisites

BLOCKED by GH#21. Mobile cannot start until Corin Web API ships.

  • GH#21: Corin Web API for remote/mobile access
  • Corin v0.3.0+ with stable Web API endpoints
  • Web API spec finalized and tested

Tech Stack

Layer Choice
Framework Flutter 3.27+ (Impeller)
State Cubit
Local DB Drift
Network Dio + retrofit
Models freezed
Monorepo Melos
Minimum iOS 15+, Android API 24+

Architecture

Mobile (Flutter)
  Capture | Search | Settings
  Drift (local) | Dio (Corin Web API GH#21)
       |               |
  Local SQLite     Corin Desktop (LAN)
  (offline cache)

Implementation Roadmap

  1. Phase A (Prerequisite): GH#21 - Corin Web API (~2-3 weeks)
  2. Phase B (Foundation): Flutter project setup, server config, Drift schema (~2 days)
  3. Phase C (Core): Text/voice capture, search, memory list, offline queue (~5 days)
  4. Phase D (Polish): Settings, error handling, theme, testing (~5 days)

Total to mobile MVP: ~5-7 weeks from now (assuming Web API ships in 2-3 weeks).

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions