A text-based social media application built using Flutter and Firebase. This app allows users to post updates, like, comment on posts, and manage their profiles, including the ability to delete their account along with all associated data.
- Sign up and log in using email and password.
- Password recovery via email. (will be added later)
- Edit profile information.
- Delete account along with all associated likes, comments, and posts.
- Create and share text-based posts.
- Like and comment on posts.
- View and manage user’s own posts.
- Real-time updates for posts, likes, and comments.
- Optimized for both Android and iOS devices.
- Email Verification
- Add images/videos in Posts
- Messages between users
assets/
│
├── screenshots/ # UI Screenshots
└── icon/ # App Icon
lib/
│
├── components/ # Reusable widgets and UI componets from Text Fields to Posts Container
├── helper/ # Firebase service classes
├── models/ # Data models for the application
├── pages/ # UI screens for the application
├── services/ # Firebase service classes (auth_service and database_service)
│ │
│ ├── auth/ # Firebase Authentication Service
│ └── database/ # Database Service and Database Provider
├── themes/ # Themes Provider and text themes
└── main.dart # Main entry point of the application
- Flutter installed on your machine.
- Create a Firebase project and turn on Email/Password from the Authentication section in the Sign-in method.
- Clone the repository:
git clone https://github.com/usman619/social_app.git
cd social_app
- Install the dependencies:
flutter pub get
- Login into Firebase Console through CLI and select the project you have created before:
firebase login
flutter pub global activate flutterfirebase_cli
flutterfire config
< Select the project that you have created in Firebase Console >
flutter pub global deactivate flutterfirebase_cli
- Run using the following command:
flutter run