ForkPublic AIPublic AIpublished May 17, 2026seen 5d

forpublicai/mobile-app-2

forked from cogwheel0/conduit

Open original ↗

Captured source

source ↗
published May 17, 2026seen 5dcaptured 9hhttp 200method plain

forpublicai/mobile-app-2

Description: Mobile (iOS/Android) client for OpenWebUI. Chat with your self‑hosted AI.

Language: Dart

License: GPL-3.0

Stars: 0

Forks: 0

Open issues: 0

Created: 2026-05-17T00:09:50Z

Pushed: 2026-05-24T01:13:25Z

Default branch: main

Fork: yes

Parent repository: cogwheel0/conduit

Archived: no

README: Public AI

The native Open WebUI client for iOS and Android.

Why Public AI | Feature Snapshot | Screenshots | Quickstart | Build from Source | Architecture

Why Public AI

Open WebUI is excellent on the desktop, but mobile usually breaks down at the edges: authentication, streaming stability, sharing content into a prompt, and working quickly from the home screen. Public AI is built to close that gap with a native client that respects self-hosted deployments and still feels polished enough for daily use.

Feature Snapshot

| Area | Included | | --- | --- | | Chat | Real-time streaming, model selection, temporary chats, conversation search, and folder management | | AI workflows | File and image uploads, re-attaching previously uploaded server files, multimodal prompts, server-side tools, saved prompts with variables, model-specific toggle filters, and optional web search or image generation when supported by your server | | Authentication | Username and password, LDAP, JWT, custom headers, SSO/OAuth, and reverse proxy login flows | | Productivity | Notes with autosave, pinning, AI-generated titles, AI enhancement, audio attachments, channels with threads and reactions when enabled by the server, and sharing from other apps | | Rendering | Syntax-highlighted code, LaTeX, Mermaid, Chart.js, citations, follow-up suggestions, reasoning blocks, tool-call details, and code execution rendering | | Mobile UX | Voice input, full voice-call mode, home screen widgets, app quick actions, clipboard image paste, haptics, and adaptive Material/Cupertino UI | | Personalization | Light, dark, and system themes plus a localized interface across 10 supported locales | | Privacy | Native secure storage, no third-party analytics or ads, and no developer-operated backend relaying your data |

Built for Self-Hosted Reality

  • Handles direct Open WebUI sign-in as well as OAuth and SSO providers exposed

by your deployment.

  • Works with reverse proxy setups such as oauth2-proxy, Authelia,

Authentik, Pangolin, and Cloudflare Tunnel by capturing the right cookies and session state on-device.

  • Supports custom headers during connection setup for environments that depend

on keys like X-API-Key, Authorization, or organization routing headers.

  • Keeps credentials in Keychain or Keystore instead of plain-text local

storage.

  • Uses WebSocket-backed streaming for fast token-by-token responses and better

long-running chat reliability.

  • Surfaces optional server capabilities such as notes, channels, web search,

and image generation only when your Open WebUI deployment exposes them.

Assistant Output That Holds Up on Mobile

Public AI renders more than plain chat bubbles. The app includes native Flutter surfaces for:

  • syntax-highlighted code blocks with copy and preview affordances
  • Mermaid diagrams and Chart.js embeds
  • LaTeX and math rendering
  • expandable reasoning, tool-call, and code-execution sections
  • inline citations, source cards, and follow-up suggestions

Platform Integrations

  • Home screen widgets on iOS and Android with new chat, microphone, camera,

photos, and clipboard entry points

  • App quick actions for starting a new chat or jumping straight into voice call
  • iOS App Intents and Shortcuts for opening chat, sending text, URLs, images,

and starting a voice call

  • Share-sheet ingestion and clipboard image paste to move content into a prompt

without manual file juggling

Screenshots

| Chat | Models | Navigation | Settings | | --- | --- | --- | --- | | | | | |

Quickstart

If you just want to use Public AI, install it from the App Store or Google Play, connect it to your Open WebUI server, and sign in with the auth flow your deployment already exposes.

1. Launch Public AI. 2. Enter the base URL for your Open WebUI instance. 3. Add any required custom headers. 4. Sign in with username and password, LDAP, JWT, SSO, or proxy auth. 5. Pick a model and start chatting.

Features such as channels, notes, web search, image generation, and toggle filters appear when they are available on the connected server.

Build from Source

Requirements

  • A recent Flutter SDK with Dart 3.8 or newer
  • Java 17 for Android builds
  • Android 7.0+ (API 24) or iOS 16.0+
  • An Open WebUI instance for normal usage
  • Xcode for iOS builds or Android Studio / Android SDK for Android builds

Run locally

git clone https://github.com/your-org/public-ai-mobile.git
cd public-ai-mobile
flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run -d ios
# or
flutter run -d android

Developer checks

flutter pub get
dart run build_runner build --delete-conflicting-outputs
dart run custom_lint
flutter test

Release builds

# Android
flutter build apk --release
flutter build appbundle --release

# iOS
flutter build ios --release

Localization

Public AI currently ships localized UI strings for English, German, Spanish, French, Italian, Korean, Dutch, Russian, Simplified Chinese, and Traditional Chinese.

Architecture

Public AI is a Flutter application organized around feature modules and shared platform services. It uses Riverpod 3 with code generation for state management and GoRouter for navigation, with persistent local storage and secure credential handling built into the core layer.

Stack

  • Flutter for the UI layer
  • Riverpod 3 and riverpod_generator for state and dependency wiring
  • GoRouter for navigation
  • Dio plus socket transport for API and streaming
  • Hive and shared preferences for local persistence
  • Flutter Secure Storage for credentials

Project layout

lib/
core/ auth, routing, models, persistence, platform services
features/
auth/ server setup, login, SSO, and proxy auth
chat/ conversations, attachments, tools, streaming, voice call
channels/ channel browsing and messaging
navigation/ chat shell, drawer, and responsive navigation
notes/ note editor and AI-assisted note workflows
profile/ theme, preferences, and app customization
prompts/ prompt helpers and prompt variable UI
tools/ tool integration surfaces
shared/ reusable widgets, theme tokens,…

Excerpt shown — open the source for the full document.

Notability

notability 1.0/10

Routine fork, no notable traction