This Flutter mobile app is part of the Social Media App project, which aims to replicate the basic functionality of a social media platform. The app utilizes the backend created with Node.js, Express, and MongoDB.
The mobile app allows users to interact with the social media platform on the go. It provides a user-friendly interface for accessing and contributing to posts, comments, and more.
-
User Authentication:
- Login and register functionalities.
-
Upload Posts:
- Users can upload posts with text and images.
-
Get All Posts:
- Access a feed showing all posts.
-
View Others' Profiles:
- Explore other users' profiles and view their posts.
-
Comments:
- Add comments on posts.
-
Like Posts and Comments:
- Users can like both posts and comments.
-
Real-time Chat:
- Enable real-time chat with friends.(socket.io)
-
Video calling (P2P):
- Real time video calling using webRTC.
-
Add more options in Calling:
- Like switch camera, mute audio, stop video, etc.
-
Login:
- User login screen.
-
Register:
- User registration screen.
-
Main Navigation:
-
Bottom navigation bar with the following tabs:
- Home: Displays all posts.
- Profile: Shows the user's profile.
- Logout: Log out of the app.
- Update Profile: Modify user profile.
-
Upload Post:
- Allows users to create and upload posts.
-
-
Public Profile:
- Displays a user's public profile with sections for user details and their posts.
-
Single Post View:
- Detailed view of a single post, including comments.
-
Friend Requests:
- Send/receive friend requests.
-
Notifications:
- Receive notifications for friend requests.
-
Chat:
- send and receive messages to friends in real time.
- typing and online indicators.
6 Video call:
- Enable user to make video calls with friends
-
Upload Gifs, Videos, and PDFs:
- Enhance post content options.
-
Privacy Settings:
- Make posts visible only to friends.
-
Dark Mode:
- Enable real-time chat with friends.
-
Send Media in Chats:
- send media files like image, videos, and other files.
-
only Audio call:
- Make person to person audio calls.
-
Replay to message:
- Reply to specific message.
To run the Flutter mobile app in dev mode, follow these steps:
- Clone this repository.
- Run the following commands:
flutter pub get
flutter run --flavor dev -t lib/main_dev.dart
Login Screen | Register Screen | Main Navigations(Home) | Main Navigations(Profile) |
---|---|---|---|
Post Screen | Public Profile Screen | Create Post Screen | Create Post section |
---|---|---|---|
Edit profile Screen | Friends Screen | Friend Requests Screen | Friend Requests Screen |
---|---|---|---|
Notification | Chat Screen | Chat Screen | Chat Screen |
---|---|---|---|
Chat Screen | No Internet Screen | Video Call | Video Call |
---|---|---|---|
Video Call | Video Call | Video Call |
---|---|---|
Feel free to reach out for any questions or feedback. Happy coding!