Chatzen is a real-time chat application built with Kotlin that allows users to securely send messages and make video calls with their friends. It utilizes Firebase as the backend to store data and ensure secure communication. The application supports one-to-one authentication, message storage with unique IDs, and offers a seamless video calling feature using the Jitsi API.
- Real-time Messaging: Send and receive messages instantly with friends.
- Secure Video Calls: Create private and secure video call rooms with unique IDs.
- Firebase Integration:
- Store user credentials and chat history.
- Unique message IDs for each chat.
- One-to-one authentication for secure messaging.
- Interactive UI: Modern and user-friendly interface for a smooth experience.
- Jitsi API: High-quality video calling feature with security and privacy.
- Kotlin: The primary language for the application.
- Firebase:
- Authentication: To handle user sign-ins and logins.
- Firestore: For real-time database management and message storage.
- Retrofit (Jitsi API): For implementing video call functionality.
- Android Studio
- Firebase project configured with Firestore and Authentication
- Jitsi API for video calls.
-
Clone the repository:
git clone https://github.com/Raghu1124/Chatzen.git
-
Open the project in Android Studio.
-
Set up Firebase:
- Go to Firebase Console.
- Create a new project.
- Add your Android app to the Firebase project.
- Download and add the
google-services.json
file to the project’sapp
directory. - Enable Firebase Authentication and Firestore in the Firebase console.
-
Configure Jitsi API:
- Follow Jitsi SDK Documentation to integrate the Jitsi API for video calls.
-
Build and run the application in an Android emulator or a real device.
- Sign Up / Log In: Create an account using your email or log in if you already have an account.
- Chat: Select a friend and start chatting in real-time. Messages are securely stored in Firebase.
- Video Call: Start a video call by creating a secure room with a unique ID.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
For any inquiries or issues, feel free to contact me at [email protected].