Skip to main content
Mobile ApplicationCompleted

LayeredMindAI Mobile: Cross-Platform iOS and Android Companion for the LayeredMindAI Platform

A Flutter mobile client for LayeredMindAI on iOS and Android, with multi-provider chat, MCP tools, file uploads, voice, and subscriptions, all on top of a Clean Architecture and Riverpod codebase.

DeveloperMustafa Kürşad Başer
Started: Jan 2026Completed: May 2026
LayeredMindAI Mobile: Cross-Platform iOS and Android Companion for the LayeredMindAI Platform

LayeredMindAI Mobile is the official iOS and Android client for the LayeredMindAI platform. It is the same product users know from the web (hundreds of models, MCP tools, RAG, code execution, custom agents) reshaped for the phone: real streaming, in-app purchases, secure token storage, deep links, and the kind of network handling cellular networks demand. The codebase is one Flutter project compiled to platform binaries through Dart AOT, structured around Clean Architecture and Riverpod.

The audience is specific: existing LayeredMindAI users who want an actual mobile experience instead of a wrapped browser, market research professionals who need quick Borsa-MCP queries between desk sessions, enterprise teams that need a vetted, store-distributable AI client with subscription billing and policy controls, and mobile-first users in markets where chat-with-AI lives on the phone, not the laptop.

On the chat side:

  • Streaming responses through a hand-rolled Server-Sent Events client (no third-party SSE wrapper) with long timeout handling, backpressure, and clean cancellation, tuned for unstable mobile networks
  • Text input, document upload, camera and gallery image attachments, speech-to-text dictation, and text-to-speech playback with Turkish voice support
  • File search across uploaded documents, live web search, AI image generation, and Model Context Protocol servers including Borsa-MCP for Turkish market data, all selectable from a dedicated tools bar
  • Paginated conversation history with search, archive and restore, branching from any message, temporary privacy-mode chats, and shareable public links resolved through deep links
  • A dedicated memories screen for the user-level memory store, plus a file manager with image gallery, viewer, and per-file deletion

On the subscription and auth side:

  • RevenueCat in-app purchases with a mandatory paywall on first launch, plan comparison UI, server-side webhook reconciliation, restore purchases, and entitlement-driven feature gating tied to backend subscription state
  • Email and password with an admin-approval registration flow, TOTP-based two-factor authentication, JWT access and refresh tokens kept in secure platform storage, proactive token refresh well ahead of expiry, and explicit logout reasons (banned, pending approval) surfaced to the user
  • A Dio-based interceptor stack for auth, token refresh, error normalization, and logging, plus SSL pinning and TLS 1.2+ ATS rules scoped to the LayeredMindAI domain

Platform behavior:

  • Adaptive light and dark themes with system sync, plus full Turkish and English localization
  • Deep links for shared conversations and integration with the system share sheet
  • A local cache layer for conversation state and media, connectivity awareness, and a graceful offline auth fallback so the app does not lock the user out the moment the network blips
  • Camera, microphone, photo library, speech recognition, and billing permissions wired up correctly on both iOS and Android

How the codebase is organized:

  • Each feature (auth, chat, subscription, memory, files, share, settings) split into data, domain, and presentation layers, with repositories and use cases keeping the UI free of network and storage concerns
  • Riverpod with code-generated providers used as the single dependency-injection mechanism, so the codebase stays free of a parallel DI container
  • Freezed plus json_serializable for immutable models and pattern matching, all driven by build_runner so model boilerplate stays out of pull requests
  • Firebase Remote Config for API endpoints and feature flags, so server-side toggles roll out without an app update
  • Streaming chat over a purpose-built SSE client on Dio, which gives fine control over reconnects, partial event handling, and timeouts on flaky cellular networks

The result is a single Flutter codebase that ships to both the App Store and Google Play while respecting each platform's conventions, instead of two parallel codebases drifting apart.

Project Gallery

LayeredMindAI Mobile: Cross-Platform iOS and Android Companion for the LayeredMindAI Platform screenshot 1 / 2
1
LayeredMindAI Mobile: Cross-Platform iOS and Android Companion for the LayeredMindAI Platform screenshot 2 / 2
2

Tech Stack

Flutter 3.2Dart 3.2RiverpodFreezedDioGoRouterIsarflutter_secure_storageCustom SSE ClientRevenueCatFirebase Remote Configeasy_localizationflutter_markdownflutter_highlightspeech_to_textflutter_ttsModel Context Protocol