ARMessenger is a modern real-time chat application built with Flutter and powered by a Laravel 11 backend. This mobile client connects to the same backend as the web version and allows users to communicate securely using WebSockets and per-user encrypted messages.
- 🔐 Authentication (Login, Register) using Laravel Sanctum
- 💬 Real-time chat with Laravel Reverb (WebSocket)
- 📦 Paginated messages with auto-scroll to latest
- 🧑🤝🧑 Contact system (Add, Remove)
- ✉️ Invitation management (Send, Accept, Refuse)
- 🔐 Encrypted messages using a per-user encryption key
- ⚙️ Token expiration handling with redirect to login
- 🔄 Automatic logout and error management
- 📱 Designed for easy future extension (media sharing, calls, etc.)
- Flutter (latest stable)
- Dart
httpfor API requestsproviderfor state managementweb_socket_channelfor WebSocket communication- Laravel Sanctum for secure API authentication