-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpubspec.yaml
More file actions
174 lines (164 loc) · 7.2 KB
/
Copy pathpubspec.yaml
File metadata and controls
174 lines (164 loc) · 7.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
name: chuk_chat
description: "Chuk Chat — AI chat client for all platforms."
publish_to: 'none'
version: 1.0.110
environment:
sdk: ^3.9.2
# Dependency ceilings — what is held back and why
# ------------------------------------------------
# CI pins Flutter 3.47.0 (Dart 3.13) on every platform (subosito/flutter-action,
# plus two git-clone jobs at tag 3.47.0). The old re_editor 0.8.0 ceiling that
# forced Flutter 3.41.4 is GONE: vendor/markdraw was moved to re_editor ^0.10.0
# (one removed `sperator` param, now `leadingDivider`), so the whole Dart-3.12
# batch — pdf, printing, sqflite, sqflite_common_ffi, pdfrx, record 7,
# flutter_foreground_task 11 — now updates. Do not float CI on `stable`.
#
# The four Android-toolchain caps (dynamic_color, flutter_secure_storage,
# permission_handler, app_links) are LIFTED. android/app/build.gradle.kts now
# sets compileSdk = 37 (was flutter's default 36), which satisfies
# flutter_secure_storage 11 and permission_handler_android 14. AGP 8.13.2 /
# Gradle 8.14 build against 37 fine — no AGP 9 migration was needed. dynamic_color
# 2.x still hands its palette back as a `material_ui` ColorScheme; main.dart
# imports material_ui directly and converts it to a Flutter ColorScheme.
#
# Deep transitive deps left at older versions are capped by their parents, not by
# us: material_color_utilities (pinned by the Flutter SDK), xml ^6 (enough_mail),
# qr ^3 (pretty_qr_code), isolate_manager 4.x (pdfrx), analyzer/test_api (dev
# toolchain). Forcing these via dependency_overrides breaks the parent, so they
# stay until the parent widens. Verified with a release APK build (BUILD SUCCESSFUL).
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
cupertino_icons: ^1.0.8
flutter_riverpod: ^3.4.2 # State management for chat runtime / streaming (perf re-architecture)
# Material You / system accent colour (Android 12+, some desktops).
dynamic_color: ^2.1.0
# dynamic_color 2.x surfaces its palette as a material_ui ColorScheme; we
# import it directly in main.dart to convert to a Flutter ColorScheme.
material_ui: ^1.1.1
web: ^1.1.1
shared_preferences: ^2.5.3
http: ^1.5.0
dio: ^5.4.0
flutter_svg: ^2.2.2
file_picker: ^12.0.0 # federated rewrite; drops the win32 ^5 pin that blocked share_plus/package_info_plus/geolocator
image_picker: ^1.1.2
uuid: ^4.5.2
permission_handler: ^13.0.1
supabase_flutter: ^2.10.3
app_links: ^7.2.1
crypto: ^3.0.6
cryptography: ^2.7.0
flutter_secure_storage: ^11.0.0
share_plus: ^13.3.0
package_info_plus: ^10.2.1
record: ^7.1.1 # audio recording (voice input)
# The Android assistant surface reuses `record` for its microphone.
# Endpointing is energy-based on that PCM stream — the `vad` package
# (Silero ONNX) caps `record` at ^6.1.2 and would force this app back a
# major version on its whole voice-input path. The surface answers in
# writing, so no speech-synthesis package is pulled in.
url_launcher: ^6.3.0
path_provider: ^2.1.4
markdown_widget: ^2.3.2+8
markdown: ^7.3.0
flutter_math_fork: ^0.7.2
highlight: ^0.7.0
web_socket_channel: ^3.0.1
archive: ^4.0.7
yaml: ^3.1.3 # SKILL.md frontmatter — already in the tree via pdfrx
desktop_drop: ^0.8.0
tray_manager: ^0.5.1
window_manager: ^0.5.1
image: ^4.8.0 # 4.9.x needs xml ^7 — worth a try now that enough_mail is gone
pdfx: ^2.8.0 # PDF viewing (mobile/macOS — used by workspace viewer)
pdfrx: ^2.2.24 # Cross-platform PDF viewing incl. Linux/Windows (PDFium)
flutter_foreground_task: ^11.0.1 # Keep streaming alive when app backgrounded
flutter_local_notifications: ^22.0.0 # Completion notifications with deep linking
pasteboard: ^0.5.0
flutter_map: ^8.3.0 # Map widget for displaying locations/routes
latlong2: ^0.10.1 # Coordinate math (LatLng type) — flutter_map 8.3.1 widened to >=0.9.1 <0.11.0
fl_chart: ^1.1.1 # Chart rendering (bar, line, pie, scatter, radar)
geolocator: ^14.0.3
add_2_calendar: ^3.1.1 # Native calendar event creation
timezone: ^0.11.0 # Timezone data for notifications
pretty_qr_code: ^3.6.0
sqflite: ^2.4.3 # local chat cache (native platforms)
sqflite_common_ffi: ^2.4.2 # SQLite on desktop (Linux/Windows/macOS)
path: ^1.9.1
sqlite3_flutter_libs: ^0.6.0+eol
# System-WebView renderer for HTML artifacts on
# Android/iOS/macOS/Windows/Web. Linux has no stable federation for
# this plugin, so the desktop Linux build falls back to a source view.
# A separate "-full" Linux artifact built via CI injects `webview_cef`
# (CEF/Chromium) for real HTML rendering. See .github/workflows and
# ci/linux_full/ for the swap-in files.
flutter_inappwebview: ^6.1.5
# Native cross-platform Excalidraw-compatible drawing widget. Replaces
# the old WebView-based renderer — works on every Flutter platform
# without bundling Chromium or shipping the official Excalidraw bundle.
#
# Vendored from pub.dev markdraw 0.2.0 (see vendor/markdraw/). Patched
# to relax file_picker / google_fonts constraints and to no-op
# MarkdrawFileHandler (incompatible with file_picker ^11 API). Upgrading
# markdraw requires re-vendoring + re-applying these patches.
markdraw:
path: vendor/markdraw
# super_native_extensions (via markdraw -> super_clipboard) caps device_info_plus
# at <12.0.0, which pins win32 to 5.x and blocks file_picker 12, share_plus 13,
# package_info_plus 10 and geolocator 14.0.3. It only reads
# `AndroidDeviceInfo.version.sdkInt`, an API unchanged in 12 and 13, so the cap is
# stale rather than real. Drop this override once super_clipboard widens its range.
dependency_overrides:
device_info_plus: ^13.2.0
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^6.0.0
flutter:
uses-material-design: true
assets:
- assets/logo.svg
- assets/wordmark.svg
- assets/icons/
- assets/icons/hugeicons/
- assets/icons/chuk_chat_tray_brand.png
- assets/mcp_icons/
- web/icons/Icon-512.png
- windows/runner/resources/app_icon.ico
# The three selectable chat fonts, bundled locally (previously fetched at
# runtime by google_fonts, which baked a ~7.8 MB font metadata table into the
# release snapshot). Arimo and JetBrains Mono are variable fonts (the wght
# axis covers every weight); Merriweather ships as static regular/bold weights.
fonts:
- family: Arimo
fonts:
- asset: assets/fonts/Arimo-wght.ttf
- asset: assets/fonts/Arimo-Italic-wght.ttf
style: italic
- family: Merriweather
fonts:
- asset: assets/fonts/Merriweather-Regular.ttf
- asset: assets/fonts/Merriweather-Bold.ttf
weight: 700
- asset: assets/fonts/Merriweather-Italic.ttf
style: italic
- asset: assets/fonts/Merriweather-BoldItalic.ttf
weight: 700
style: italic
- family: JetBrains Mono
fonts:
- asset: assets/fonts/JetBrainsMono-wght.ttf
- asset: assets/fonts/JetBrainsMono-Italic-wght.ttf
style: italic
msix_config:
display_name: chuk_chat
publisher_display_name: chuk Development
identity_name: chuk.chat
publisher: CN=chuk Development
msix_version: 1.0.0.0
logo_path: web/icons/Icon-512.png
capabilities: internetClient
store: false