This project is a WhatsApp clone built using Flutter for the front-end and Firebase for the backend. It aims to provide a scalable and feature-rich messaging application with a user-friendly interface. The project leverages Flutter's expressive UI capabilities and Firebase's real-time database for seamless communication.
-
Real-time Messaging: Utilize Firebase's real-time database to enable instant messaging between users.
-
Authentication: Implement Firebase Authentication for secure user registration and login.
-
User Profiles: Allow users to create and customize their profiles with profile pictures and status updates.
-
Media Sharing: Enable users to share text messages, images, videos, and other media files seamlessly.
Firebase is a comprehensive mobile and web application development platform offered by Google. It provides a suite of cloud-based services, including real-time database, authentication, hosting, and more. Firebase's real-time database allows developers to build responsive and dynamic applications with synchronized data across devices. With seamless integration and scalability, Firebase simplifies backend development, empowering developers to focus on crafting engaging user experiences.
-
Clone the Repository:
git clone https://github.com/yourusername/WhatsApp-clone-Flutter.git
-
Navigate to the Project Directory:
cd whatsapp-clone
-
Install Dependencies:
flutter pub get
-
Configure Firebase:
- Create a new project on the Firebase Console.
- Add an Android/iOS app to your Firebase project.
- Connect with flutter option
-
Run the Application:
flutter run
In the lib/config
directory, you'll find a firebase_config.dart
file. Update the Firebase configuration with your own credentials.
class FirebaseConfig {
static const String apiKey = 'YOUR_API_KEY';
static const String authDomain = 'YOUR_AUTH_DOMAIN';
static const String projectId = 'YOUR_PROJECT_ID';
static const String storageBucket = 'YOUR_STORAGE_BUCKET';
static const String messagingSenderId = 'YOUR_MESSAGING_SENDER_ID';
static const String appId = 'YOUR_APP_ID';
}
If you'd like to contribute to this project, please follow the Contributing Guidelines.