- Direct m.login.password auth against matrix.m8chat.au - Room list with unread badges, last message, timestamps - Chat timeline (text, images, files, replies, reactions) - Profile screen with expandable Notifications and Security sections - Olm E2EE initialisation (web WASM bootstrap) - Global error handler preventing Matrix SDK crashes - GoRouter with refreshListenable (no recreation on auth change) - Feature-first clean architecture: Riverpod + GoRouter + Drift - Deployed to https://app2.m8chat.au Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
57 lines
1008 B
YAML
57 lines
1008 B
YAML
name: m8chat_app
|
|
description: "M8Chat — Matrix chat client for Android, iOS, and Web."
|
|
publish_to: 'none'
|
|
version: 1.0.0+1
|
|
|
|
environment:
|
|
sdk: '>=3.11.0 <4.0.0'
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
|
|
# Matrix SDK
|
|
matrix: ^0.33.0
|
|
|
|
# State management
|
|
flutter_riverpod: ^3.0.0
|
|
riverpod_annotation: ^3.0.0
|
|
|
|
# Navigation
|
|
go_router: ^15.0.0
|
|
|
|
# Storage
|
|
drift: ^2.22.0
|
|
drift_flutter: ^0.2.0
|
|
flutter_secure_storage: ^9.0.0
|
|
|
|
# Serialisation
|
|
freezed_annotation: ^3.0.0
|
|
json_annotation: ^4.9.0
|
|
|
|
# Video/Voice (MatrixRTC + LiveKit) — Phase 2 active use; wired in Phase 1
|
|
livekit_client: ^2.4.0
|
|
flutter_webrtc: ^0.12.0
|
|
|
|
# UI
|
|
cached_network_image: ^3.4.0
|
|
timeago: ^3.7.0
|
|
intl: ^0.20.0
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^5.0.0
|
|
build_runner: ^2.4.0
|
|
riverpod_generator: ^3.0.0
|
|
freezed: ^3.0.0
|
|
json_serializable: ^6.9.0
|
|
drift_dev: ^2.22.0
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
|
|
assets:
|
|
- assets/images/
|
|
- assets/icons/
|