name: jarvis
description: "Jarvis × Ultron — voice-first personal assistant (Phase 1)."
publish_to: 'none'

version: 1.0.0+1

# Toolchain: Flutter 3.29.0 / Dart 3.7.0. Every dependency below is pinned to
# the newest release whose pubspec `environment.sdk` still admits Dart 3.7.0
# (i.e. NOT the ^3.8/^3.9/^3.12 releases). See mobile/README for the rationale.
environment:
  sdk: ">=3.7.0 <4.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^1.0.8

  # On-device VAD (Silero) + streaming STT (zipformer). sdk >=3.1.0 <4.0.0.
  sherpa_onnx: 1.13.4
  # Raw 16 kHz PCM mic stream + Android voiceCommunication source (HW AEC).
  # 7.x needs Dart ^3.12 — 6.2.1 is the last release that admits Dart 3.7.
  record: 6.2.1
  # Gapless PCM16 stream playback for per-sentence TTS WAVs.
  # 9.29+ needs Dart ^3.7.2 — 9.28.0 is the last release admitting Dart 3.7.0.
  flutter_sound: 9.28.0
  # WS client for the gateway protocol (§3).
  web_socket_channel: 3.0.3
  # Persist gateway URL + key.
  # 2.5.4+ needs Dart ^3.9 — 2.5.3 is the last admitting Dart 3.7.
  shared_preferences: 2.5.3
  # RECORD_AUDIO / notifications runtime permission requests.
  permission_handler: 12.0.3
  # App documents dir for downloaded models.
  # 2.1.6 needs Dart ^3.10 — 2.1.5 is the last admitting Dart 3.7.
  path_provider: 2.1.5
  # Model downloads (with progress) + tar.bz2 extraction.
  http: ^1.2.0
  archive: ^4.0.0
  # Geometric UI typeface (Space Grotesk). 6.3.2 pins sdk ^3.7.0 / flutter
  # >=3.29.0 — the exact toolchain here; newer majors need Dart >3.7.
  google_fonts: 6.3.2

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_lints: ^5.0.0

flutter:
  uses-material-design: true
