ChatterBox is a real-time messaging application built using Kotlin for Android. It allows users to communicate with each other through a simple and efficient interface, featuring real-time chat functionality, user authentication, and more.
- User Authentication: Users can securely sign up and log in to the app.
- Real-Time Messaging: Send and receive messages instantly using Firebase Realtime Database.
- User Profiles: Users can set and update their profile with a display picture and status.
- Typing Indicator: Shows when a user is typing in the chat.
- Message Timestamps: Displays the time messages are sent.
- Online/Offline Status: See when your contacts are online or offline.
- Kotlin: Programming language for Android app development.
- Firebase Authentication: Secure user login and signup functionality.
- Firebase Realtime Database: For real-time message storage and synchronization.
- Firebase Cloud Messaging (FCM): For sending push notifications to users.
- Firebase Storage: For storing and retrieving shared images.
- Android Studio: Make sure you have Android Studio installed. Download it from here.
- Firebase Account: Create a Firebase project to integrate Firebase services with your app. Follow the Firebase setup guide below.
- Clone the Repository:
Open a terminal and run the following command:
git clone https://github.com/KrishnaTech6/ChatterBox-Chatting-App.git
- Launch Android Studio.
- Open the project by navigating to the cloned repository on your system.
- Go to the Firebase Console and create a new Firebase project.
- Add your Android app to the Firebase project by registering the app using the package name of the app.
- Download the
google-services.json
file from Firebase and place it in theapp/
directory of your Android project. - Add the Firebase SDK dependencies to your
build.gradle
file.
- Sync your Gradle files by selecting File > Sync Project with Gradle Files.
- Connect an Android device or start an emulator.
- Build and run the app by clicking on Run > Run 'app' in Android Studio.
Follow these steps to connect the app to Firebase services:
- Firebase Authentication: Enable authentication providers (e.g., Email/Password) in the Firebase console.
- Firebase Realtime Database: Set up Firebase Realtime Database and configure the required rules for real-time messaging.
- Firebase Cloud Messaging (FCM): Enable FCM to send push notifications to users.
- Firebase Storage: Set up Firebase Storage to allow image uploads.
Add the following dependencies to your build.gradle
file:
implementation 'com.google.firebase:firebase-auth:21.0.1'
implementation 'com.google.firebase:firebase-database:20.0.2'
implementation 'com.google.firebase:firebase-storage:20.0.0'
implementation 'com.google.firebase:firebase-messaging:23.0.0'