Files
sharedinbox/pubspec.yaml
T
Thomas SharedInboxandClaude Sonnet 4.6 99df6f5fd0 feat(accounts): share account settings via QR code / JSON export (#66)
Add Export account screen (QR code + copy-to-clipboard) and Import
account screen (paste JSON code) so users can transfer IMAP/JMAP
account configuration to another device without re-entering every field.

- Account list popup: "Export account" opens a QR code with a password
  warning and a copy-code button.
- Add Account screen: "Import account" button opens the import flow
  where pasting the exported JSON pre-fills the account and one tap
  saves it with a fresh generated ID.
- New routes: /accounts/:id/export and /accounts/import.
- Widget tests cover export display, import parsing, validation,
  and the happy-path save-and-navigate flow.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-15 16:53:36 +02:00

83 lines
1.9 KiB
YAML

name: sharedinbox
description: IMAP email client for Android, iOS, and Desktop.
publish_to: none
version: 0.1.1
environment:
sdk: '>=3.3.0 <4.0.0'
flutter: '>=3.22.0'
dependencies:
flutter:
sdk: flutter
# Not used directly, but required to silence Flutter's "missing CupertinoIcons font" build warning.
cupertino_icons: ^1.0.8
enough_mail: ^2.1.7
http: ^1.2.0
# Local persistence (offline-first)
drift: ^2.20.3
sqlite3_flutter_libs: ^0.5.28
path_provider: ^2.1.5
path: ^1.9.1
# State management
flutter_riverpod: ^2.6.1
# Navigation
go_router: ^14.8.1
# Secure credential storage (passwords)
flutter_secure_storage: ^10.0.0
# Date formatting
intl: any
# File picking (compose attachments) and opening downloaded attachments
file_picker: ^8.0.0
open_filex: ^4.6.0
mime: ^2.0.0
# QR code generation for account sharing
qr_flutter: ^4.1.0
# HTML rendering for email bodies
webview_flutter: ^4.0.0
url_launcher: ^6.3.2
flutter_markdown: ^0.7.7+1
# Background sync and local notifications
flutter_local_notifications: ^18.0.1
workmanager: ^0.9.0
# App version metadata for crash reports
package_info_plus: ^8.0.0
dev_dependencies:
flutter_test:
sdk: flutter
integration_test:
sdk: flutter
flutter_lints: ^4.0.0
drift_dev: ^2.20.3
build_runner: ^2.4.13
test: ^1.25.0
mockito: ^5.4.4
fake_async: ^1.3.1
sqlite3: any # used directly in test/unit/db_test_helper.dart
url_launcher_platform_interface: ^2.3.2
plugin_platform_interface: ^2.1.8
flutter:
uses-material-design: true
assets:
- assets/
dependency_overrides:
# path_provider_android 2.3+ uses package:jni which crashes on startup
# (SIGSEGV in libdartjni.so FindClassUnchecked — JNI env not ready when
# the Dart VM first calls into it). Pin to 2.2.x which uses Pigeon instead.
path_provider_android: ">=2.2.0 <2.3.0"