A powerful, modern Android application for scheduling SMS campaigns to individuals and groups. Built with Flutter, employing Clean Architecture and Riverpod for state management.
- Smart Scheduling: Schedule SMS campaigns for precise future times (uses
AndroidAlarmManagerfor reliability). - Group Management: Create and manage contact groups easily.
- Bulk Sending: Send messages to hundreds of contacts efficiently.
- Direct Send: Quick-send to manually entered numbers or existing groups.
- Modern Dashboard: Glassmorphism-inspired UI with real-time analytics (Sent, Failed, Pending).
- Message Templates: Save recurring messages for quick access.
- Offline First: Local SQLite database (Drift) ensures data privacy and offline availability.
- Performance: Optimized for large contact lists (5000+) with search debouncing.
- Framework: Flutter (Android)
- State Management: Riverpod
- Database: Drift (SQLite)
- Navigation: GoRouter
- Background Tasks: AndroidAlarmManager Plus
- Contacts: Flutter Contacts
- Flutter SDK (3.16+)
- Android Studio / VS Code
- Android Device/Emulator (Min SDK 21)
-
Clone the repository
https://github.com/TISANKAN/SMS-SCHEDULER.git cd sms_scheduler_pro -
Install Dependencies
flutter pub get
-
Run Code Generation (for Riverpod & Drift)
dart run build_runner build -d
-
Run the App
flutter run
The app follows Feature-First Clean Architecture:
lib/
├── core/ # Shared logic (Database, Theme, Services)
├── features/
│ ├── analytics/ # Dashboard & Stats
│ ├── campaigns/ # Composer & History
│ ├── contacts/ # Contact Management
│ ├── groups/ # Group Management
│ └── templates/ # Message Templates
└── main.dart # Entry Point
(Add your screenshots here)
Contributions are welcome! Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
Tisankan
- 🌐 Website: tisankan.dev
- 📧 Email: hello@tisankan.dev
- 🐙 GitHub: @TISANKAN