# Hasher Client App

This folder contains the public Flutter client package for Hasher.

It is intended to be readable, buildable, and useful for feature and privacy review.

## Main folders

- `lib/`
  - app screens, services, models, widgets, and shared utilities
- `android/`, `ios/`, `web/`
  - platform project files and native runtime configuration
- `assets/`
  - packaged client assets used by the application
- `test/`
  - client test entry points

## Main runtime flags

- `USE_LOCAL_BACKEND`
- `LOCAL_BACKEND_HOST`
- `LOCAL_BACKEND_BASE_URL`
- `LOCAL_BACKEND_WS_URL`
- `APP_DISTRIBUTION`

## Important notes

- Mobile service configuration files in this public pack use review-safe placeholder values.
- Release signing files are not part of the public pack.

## Good starting files

1. `lib/main.dart`
2. `lib/utils/app_config.dart`
3. `lib/services/api_service.dart`
4. `lib/services/hash_service.dart`
5. `lib/services/key_service.dart`
6. `lib/services/prekey_service.dart`
7. `lib/services/ratchet_service.dart`
8. `lib/services/sender_key_service.dart`
9. `lib/chat_screen.dart`
10. `lib/group_chat_screen.dart`
