Chat App is a mobile messaging application that mimics the core functionalities and user interface of the original WhatsApp. The app provides a robust platform for secure messaging, group chats, and status updates, along with an OTP-based phone number authentication system. While still in development, the app aims to deliver a seamless user experience with essential communication features.
Features:
User Authentication:
Phone Number Login-> Users can sign in using their phone number. OTP Authentication-> Secure OTP verification ensures safe and reliable user authentication.
Profile Setup:
After authentication, users can set up their profile by entering their name and uploading a profile picture.
Chat Functionality:
Individual Chats-> Users can chat with individual contacts who are also signed in to the app. Group Chats-> Users can create groups and chat with multiple users simultaneously.
Status Feature:
Users can upload a single status image at a time. Adding a new status image overwrites the previous one. The current implementation does not support viewing statuses in a new frame or uploading videos.
Call Screen:
Fake Contacts-> Users can simulate audio or video calls with fake contacts. Call Simulation-> Users can select the number of contacts and choose between audio and video call options to simulate calls.
Splash Screen:
A smooth transition splash screen displays the app name and logo upon launching.
Contact Management:
Users can only see contacts who have signed in to the app. Custom contacts can be created but does not support interactive chatting.
Delete Feature:
Users can delete their own chats from own account or both own and other chatting user account by "Delete for me" or "Delete for everyone". Users can delete other chatting users chats only from their own account. Users can delete whole chat box only from their own account.
Future Updates:
Search Functionality: To help users quickly find contacts, messages, or groups.
Settings/More options Feature: To provide users with more customization options and improve user-friendliness.
Leave functionality: Users for now can not leave from the group in which they add because more options feature not implemented yet but they can delete whole group chat box from their own account.
Media Sharing: To share images, videos, pdf, gif etc with other users.
Enhanced Status Feature: Plans to support multiple statuses, view statuses in a new frame, and allow video uploads.
Technologies Used:
Kotlin: Primary programming language for app development.
Android SDK: For building and deploying the Android application.
Firebase Authentication: For secure OTP-based phone number authentication, saving sign-in users information and help in store chats messages of users.
Usage Flow:
User opens the WhatsApp Clone app and splash screen will display with the app name and logo.
This screen will appear for the first time when the user have installed an app.
User can choose their own country language but for now this app served only English language
User logs in using their phone number and verifies with an OTP.
User sets up their profile by entering their name(mandatory) and setting a profile picture by capturing from Camera or by uploading from Gallery(optional).
User can start individual or group chats with contacts who are signed in to the app.
User can upload a only status image, for now user can not upload status video also user can upload only one image at a time otherwise it overwrites previous status.
User can simulate audio or video calls with fake contacts from the call screen.