- Client: Flutter, GetX
- Architecture: MVC
- User state persistence using GetX state management library.
- Firebase signup, login (using email and password) using Firebase Authentication
- Upload videos and watch others' videos.
- Video compression for fast buffering.
- Like, comment and share videos from feed.
- Fully functional Real time chat with any user (using Flutter StreamBuilder).
- Image file upload (to Firebase Storage) using Image Picker library.
- Set a profile picture while signing in.
- Update Profile functionality with pre-filled values from Firebase.
- Search user functionality and start a conversation feature
- All conversations under the tab 'messages' in the bottom navigation bar.
videozen_video.mp4
Image Picker plugin requires additional configurational steps for ioS devices. For more information, refer here.
Versions used in the project-:
- Flutter - ^3.1
- get: ^4.6.5
- firebase_core: ^1.18.0
- firebase_auth: ^3.3.20
- firebase_storage: ^10.2.18
- cloud_firestore: ^3.1.18
- image_picker: ^0.8.5+3
- video_player: ^2.4.5
- video_compress: ^3.1.1
- timeago: ^3.2.2
- cached_network_image: ^3.2.1
- flutter_share: ^2.0.0
- flutter_svg: ^1.1.1+1
- uuid: ^3.0.6
- flutter_spinkit: ^5.1.0