- User can register into app and has to set his/her username.
- User can edit their profile by adding bio, username and uploading profile picture.
- User can post articles using camera or gallery which contain images, description, location etc.
- GeoLocation is used inorder to get current location of user.
- User can delete and edit their post but cannot delete or edit other user's post.
- User can like or dislike other's post.
- User can comment on posts of other's.
- User can follow each other to see their posts in their feed.
- User can search for other users in order to connect.
- User can change image view from grid layout to feed layout.
- Activity Feed showing recent likes / comments of your posts + new followers.
- Custom photo feed based on who you follow (using firebase cloud functions).
- User can share posts to other social media.
- User can chat with their friends by sending texts, stickers, gifs, images etc.
- splashscreen 1.3.5: to provide improved initial experience while mobile app loads.
- cloud_firestore 0.13.7: for using Google Cloud Firestore database.
- image 2.0.7: for working on images, e.g., compressing them.
- giffy_dialog 1.8.0: for a quick, handy and beautiful giffy dialog.
- curved_navigation_bar 0.3.4: for easy and animated implementation of curved navigation bar.
- animator 0.1.4: to control (forward, stop, inverse), reconfigure, reset and restart animation from buttons, or events callbacks.
- image_picker 0.6.7+11: for picking images and videos from gallery or camera.
- flutter_statusbarcolor 0.2.3: to change flutter app's statusbar's color or navigationbar's color programmatically.
- google_sign_in 4.5.4: for user login through google authentication.
- firebase_auth 0.15.2: for user login/ signup authentication.
- timeago 2.0.17: for creating fuzzy timestamps. (e.g. "5 minutes ago")
- cached_network_image: for faster image loading by caching.
- geolocator 5.0.1: to provide easy access to platform specific location services.
- uuid 2.0.0: for simple, fast Generation RFC4122 version 1, version 4, or version 5 UUIDs.
- intl 0.16.1: provides date/number formatting and parsing, including message translation etc.
- flutter_share 1.0.5: for sharing content to other apps.
- fluttertoast 7.1.5: to display toast messages.
- photo_view 0.10.3: to display full screen zoomable and pannable images.
- path_provider 0.5.0+1: for getting path for storing temporary files.
- firebase_messaging: for sending push notifications.
- firebase_storage: for using Firebase Cloud Storage.