name: client_app
description: Halo Bestie - Client App

publish_to: 'none'
version: 1.0.0+1

environment:
  sdk: '>=3.0.0 <4.0.0'

dependencies:
  flutter:
    sdk: flutter

  # Firebase (Messaging only — Auth dropped in Phase 3.4, self-managed JWT now)
  firebase_core: ^3.12.1
  firebase_messaging: ^15.2.5

  # Social login (kept — activated when OAuth creds arrive; buttons hidden behind
  # ENABLE_SOCIAL_AUTH dart-define flag until then)
  google_sign_in: ^6.2.1
  sign_in_with_apple: ^6.1.0

  # HTTP & WebSocket
  dio: ^5.4.3
  web_socket_channel: ^3.0.3

  # State management
  flutter_riverpod: ^2.6.1
  hooks_riverpod: ^2.6.1
  riverpod_annotation: ^2.6.1
  flutter_hooks: ^0.20.5

  # Storage
  shared_preferences: ^2.2.3      # onboarding flag, non-sensitive
  flutter_secure_storage: ^9.2.2  # refresh token (encrypted)

  # Navigation
  go_router: ^13.2.1
  flutter_local_notifications: ^21.0.0

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_lints: ^3.0.0
  riverpod_generator: ^2.6.2
  build_runner: ^2.4.13
  custom_lint: ^0.7.0
  riverpod_lint: ^2.6.2

flutter:
  uses-material-design: true
  assets:
    - assets/images/
    - assets/images/splash/
