mirror of
https://github.com/cogwheel0/conduit.git
synced 2026-10-19 09:43:36 +00:00
212 lines
5.6 KiB
YAML
212 lines
5.6 KiB
YAML
name: conduit
|
|
description: Open-source mobile client for Open-WebUI
|
|
version: 4.2.0+151
|
|
publish_to: 'none'
|
|
|
|
environment:
|
|
sdk: ">=3.13.0 <4.0.0"
|
|
flutter: ">=3.47.0"
|
|
|
|
# Pub workspace. The Flutter mobile app stays the workspace root so
|
|
# `flutter run`/`flutter test` keep working from here with no extra flags;
|
|
# the shared packages resolve against the same single lockfile, which is what
|
|
# stops the app and the packages from drifting onto different versions.
|
|
#
|
|
# Members declare `resolution: workspace`. Add new members here *and* there —
|
|
# pub fails loudly if only one side is updated.
|
|
workspace:
|
|
- packages/conduit_core
|
|
- packages/conduit_ddgs
|
|
- packages/conduit_markdown
|
|
- packages/conduit_theme
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_localizations:
|
|
sdk: flutter
|
|
material_ui: ^1.0.0
|
|
cupertino_ui: ^1.0.0
|
|
flutter_driver:
|
|
sdk: flutter
|
|
|
|
# Shared desktop/mobile packages (pub workspace members).
|
|
conduit_core:
|
|
path: packages/conduit_core
|
|
conduit_markdown:
|
|
path: packages/conduit_markdown
|
|
conduit_theme:
|
|
path: packages/conduit_theme
|
|
|
|
# State Management
|
|
flutter_riverpod: ^3.4.3
|
|
# Non-UI code imports the Flutter-free Riverpod directly, so that those
|
|
# files can move into packages/conduit_core unchanged.
|
|
riverpod: ^3.4.3
|
|
|
|
# Navigation
|
|
go_router: ^18.0.1
|
|
|
|
# Network & API
|
|
dio: ^5.9.0
|
|
ollama_dart: ^2.4.0
|
|
openai_dart: ^8.1.0
|
|
mcp_dart: ^2.4.0
|
|
http_parser: ^4.0.2
|
|
|
|
|
|
# Storage
|
|
flutter_secure_storage: ^11.1.1
|
|
hive_ce: ^2.14.0
|
|
hive_ce_flutter: ^2.3.2
|
|
shared_preferences: ^2.3.2
|
|
synchronized: ^3.4.1
|
|
|
|
# UI Components - Markdown Rendering
|
|
markdown: ^7.3.0
|
|
pdfrx: ^2.4.7
|
|
archive: ^4.0.9
|
|
xml: ^7.0.1
|
|
flutter_inappwebview: ^6.2.0-beta.3
|
|
flutter_svg: ^2.3.0
|
|
# Native Mermaid renderer. These unpublished workspace packages are pinned
|
|
# as submodules under third_party/.
|
|
mermaid_core:
|
|
path: third_party/mermaid/packages/mermaid_core
|
|
mermaid_flutter:
|
|
path: third_party/mermaid/packages/mermaid_flutter
|
|
socket_io_client: ^3.1.2
|
|
yaml: ^3.1.2
|
|
|
|
|
|
|
|
# Modern Animations
|
|
flutter_animate: ^4.5.0
|
|
stupid_simple_sheet: ^0.9.1+1
|
|
|
|
# Platform Features
|
|
# Keep exact until VAD declares Record 7 support; see dependency_overrides.
|
|
vad: 0.0.8
|
|
record: ^7.1.1
|
|
audio_session: ^0.2.2
|
|
permission_handler: ^13.0.2
|
|
image_picker: ^1.2.3
|
|
file_picker: ^13.0.0
|
|
receive_sharing_intent: ^1.9.0
|
|
flutter_image_compress: ^2.5.1
|
|
path_provider: ^2.1.4
|
|
|
|
# Utilities
|
|
clock: ^1.1.2
|
|
collection: ^1.19.1
|
|
meta: ^1.16.0
|
|
path: ^1.9.0
|
|
uuid: ^4.6.0
|
|
crypto: ^3.0.3
|
|
package_info_plus: ^10.2.1
|
|
url_launcher: ^6.3.0
|
|
intl: ^0.20.2
|
|
|
|
# Icons & Theming
|
|
cupertino_icons: ^1.0.8
|
|
json_annotation: ^4.12.0
|
|
freezed_annotation: ^3.0.0
|
|
wakelock_plus: ^1.7.0
|
|
share_plus: ^13.2.1
|
|
riverpod_annotation: ^4.0.7
|
|
flutter_local_notifications: ^22.1.0
|
|
connectivity_plus: ^7.3.0
|
|
flutter_cache_manager: ^3.4.1
|
|
http: ^1.5.0
|
|
flutter_callkit_incoming: ^3.1.6
|
|
quick_actions: ^1.1.0
|
|
html_unescape: ^2.0.0
|
|
home_widget: ^0.9.3
|
|
flutter_highlight: ^0.7.0
|
|
just_audio: ^0.10.5
|
|
cupertino_native_better: ^1.5.4
|
|
flutter_tex: ^5.2.6
|
|
xterm: ^4.0.0
|
|
web_socket: ^1.0.1
|
|
web_socket_channel: ^3.0.3
|
|
cached_network_image_ce: ^4.6.4
|
|
jovial_svg: ^1.1.29
|
|
highlight: ^0.7.0
|
|
geolocator: ^14.0.2
|
|
drift: ^2.34.2
|
|
drift_flutter: ^0.3.1
|
|
fleather: ^1.27.0
|
|
# Document model + markdown/HTML codecs backing the Fleather note editor.
|
|
parchment: ^1.27.0
|
|
flutter_webrtc: ^1.6.2+hotfix.4
|
|
|
|
# Required while mermaid_flutter declares mermaid_core from the hosted source:
|
|
# Pub cannot combine that source with Conduit's unpublished path package, even
|
|
# though both versions are 0.1.0. Remove once the upstream dependency is hosted
|
|
# or points to the adjacent workspace package.
|
|
dependency_overrides:
|
|
mermaid_core:
|
|
path: third_party/mermaid/packages/mermaid_core
|
|
# VAD 0.0.8 still declares record ^6.1.2. Conduit supplies its own Record 7
|
|
# PCM stream instead of using VAD's internal recorder. Remove this override
|
|
# once VAD publishes Record 7 support (upstream issue #22).
|
|
record: 7.1.1
|
|
# objective_c 9.6.1's build hook references Architecture.arm64e, which no
|
|
# published code_assets release defines, so native-assets compilation fails
|
|
# on macOS for every flutter test/run. Drop once a code_assets with arm64e
|
|
# ships (or objective_c stops referencing it).
|
|
objective_c: 9.6.0
|
|
|
|
dev_dependencies:
|
|
analyzer: ^13.3.0
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^6.0.0
|
|
build_runner: ^2.15.1
|
|
freezed: ^4.0.1
|
|
json_serializable: ^6.11.1
|
|
flutter_native_splash: ^2.4.6
|
|
riverpod_generator: ^4.0.9
|
|
riverpod_lint: ^3.1.9
|
|
mocktail: ^1.0.4
|
|
checks: ^0.3.1
|
|
drift_dev: ^2.34.0
|
|
fake_async: ^1.3.3
|
|
# Used only in tests to mock the microphone permission platform channel.
|
|
permission_handler_platform_interface: ^4.3.0
|
|
plugin_platform_interface: ^2.1.8
|
|
|
|
flutter:
|
|
config:
|
|
enable-swift-package-manager: true
|
|
uses-material-design: true
|
|
generate: true
|
|
# Localization
|
|
# ARB files live in lib/l10n (configured via l10n.yaml)
|
|
|
|
assets:
|
|
- THIRD_PARTY_NOTICES.md
|
|
- assets/icons/
|
|
- assets/model_logos/
|
|
- assets/release_notes/
|
|
- assets/chartjs.min.js
|
|
- assets/flutter_tex.js
|
|
- assets/flutter_tex.css
|
|
- assets/vad/
|
|
|
|
flutter_native_splash:
|
|
# Splash background matches the light theme; `color_dark` handles dark mode.
|
|
color: "#FFFFFF"
|
|
color_dark: "#000000"
|
|
# Image to display on the splash screen
|
|
image: assets/icons/icon.png
|
|
|
|
|
|
# Android specific settings
|
|
android_12:
|
|
color: "#FFFFFF"
|
|
color_dark: "#000000"
|
|
|
|
# Web specific settings
|
|
web: false
|
|
|