Twins - Educational App
📚 Twins Educational App
Twins is a modern educational Flutter application that provides students with high-quality video tutorials, interactive social features, and secure learning tools. The app is designed to help students learn better, connect with teachers, and stay motivated.
Key Features
Premium Video Lessons
Access paid educational videos covering different subjects with clear explanations and step-by-step guidance.
Social Community
- Post and share updates with other students.
- Comment, like, and interact with the community.
- Follow top students and teachers.
Live Chat with Teachers
Communicate directly with your teachers through private messaging to ask questions and get support.
Stories & Highlights
View daily stories from your peers and teachers, and see the top-performing students.
Rankings
Stay motivated by checking the leaderboard of top students in your class or subject.
Screen Capture Protection
Enhanced security to prevent unauthorized screenshots or screen recordings.
Push Notifications
Get real-time updates for new videos, messages, and announcements.
Multi-platform Support
Built with Flutter, the app works seamlessly on Android and iOS devices.
Built With
- Flutter & Dart
- Firebase for Authentication, Firestore, Storage, and Push Notifications.
- Bloc Pattern for state management.
- OneSignal & Local Notifications for alerts.
- Video Player for streaming lessons.
- Secure Window Manager for blocking screenshots.
- Social Features with posts, comments, and stories.
Required Packages
| Section | Package | Version | Purpose |
|---|---|---|---|
| Core Flutter | flutter | sdk: flutter | Flutter SDK |
| UI Essentials | cupertino_icons | ^1.0.2 | iOS style icons |
| Â | conditional_builder_null_safety | ^0.0.6 | Conditional widgets builder |
| Â | expansion_widget | latest | Expand/collapse widgets |
| Â | like_button | latest | Like button with animation |
| Â | percent_indicator | latest | Circular/linear percent indicators |
| Media & Files | image_picker | latest | Pick images from gallery or camera |
| Â | path_provider | latest | Access device paths |
| Â | path | ^1.8.1 | File system path manipulation |
| Â | video_player | latest | Play video files |
| Â | flick_video_player | latest | Advanced video player |
| Audio | flutter_sound_lite | ^8.5.0 | Record & play audio |
| Â | audioplayers | ^0.20.1 | Play audio files |
| Utilities | fluttertoast | latest | Show toast messages |
| Â | intl | latest | Internationalization support |
| Â | http | ^0.13.4 | HTTP requests |
| Â | url_launcher | latest | Open external URLs |
| Â | auto_orientation | latest | Manage screen orientation |
| Â | internet_connection_checker | latest | Check internet connection |
| Permissions & Security | permission_handler | latest | Handle runtime permissions |
| Â | flutter_windowmanager | ^0.2.0 | Secure app content from screenshots |
| Local Storage | shared_preferences | latest | Local key-value storage |
| Firebase Services | firebase_core | latest | Firebase core functionality |
| Â | firebase_auth | latest | User authentication |
| Â | cloud_firestore | latest | Cloud Firestore database |
| Â | firebase_storage | latest | Store files in Firebase |
| Â | firebase_messaging | latest | Push notifications |
| Â | flutter_local_notifications | latest | Local notifications |
| Â | onesignal_flutter | latest | OneSignal push notifications |
| State Management | bloc | latest | BLoC state management |
| Â | flutter_bloc | latest | Flutter bindings for BLoC |
| Date & Time Picker | flutter_datetime_picker | git: master | Date & time picker (custom ref) |
| Progress Indicators | liquid_progress_indicator | latest | Liquid style progress indicators |
| Splash & Icons | flutter_native_splash | latest | Native splash screens |
| Â | flutter_launcher_icons | latest | App launcher icons |
Source Code
URL