A modern, clean, and feature-rich SMS application built with Flutter. This project follows Clean Architecture principles and provides a minimal UI for a seamless messaging experience.
- Conversation Grouping: Messages are automatically grouped by contact for an organized view.
- Modern UI: Clean, minimal design using Material 3 and custom themes.
- Fast Search: Instantly find messages by contact name or message content.
- Direct Messaging: Send SMS messages directly within the app.
- Threaded View: View full conversation history with a dedicated chat interface.
- Permission Management: Graceful handling of Android SMS and Phone permissions.
- Dark Mode Support: Fully supports system-wide dark and light themes.
The project is structured following a Feature-based Clean Architecture:
lib/core/: Application-wide themes, constants, and utilities.lib/features/sms/:data/: Data sources and repositories (SMS reading/sending logic).presentation/:pages/: Full-screen UI components (SmsPage, ConversationPage).widgets/: Reusable UI components (MessageTile, SendSmsSheet).providers/: State management usingChangeNotifier.
- Flutter SDK (^3.8.1)
- Android Studio / VS Code
- An Android device (Physical device recommended for SMS features)
- Clone the repository:
git clone https://github.com/yourusername/smsapp.git
- Install dependencies:
flutter pub get
- Run the application:
flutter run
This application requires the following permissions:
READ_SMS: To display your message history.SEND_SMS: To allow sending new messages.READ_PHONE_STATE: To identify message status.
- flutter_sms_inbox - Reading SMS messages.
- sms_sender - Sending SMS messages directly.
- permission_handler - Permission management.
This project is licensed under the MIT License - see the LICENSE file for details.

