A real-time chat interface where multiple users can interact with each other by sending messages. This app was made with kotlin. This is a part of the #30daysofKotlin challenge by google dev India.
- User is asked to authenticate himself on entering the app using google sign-in, email, etc.
- User can see an
input field
where he can type a new message - By pressing the
enter
key or by clicking on thesend
button the text will be displayed in thechat box
alongside his username (e.g.John Wick: Hello World!
) - The messages will be visible to all the Users that are in the chat app (using Firebase Realtime Database)
- When a new User joins the chat, a message is displayed to all the existing Users
- Messages are saved in a database
- User can send images, videos and links which will be displayed properly
- User can select and send an emoji
- Users can chat in private
- Users can join
channels
on specific topics
-
Primary Language : Kotlin
-
Backend : Firebase
-
Glide : An image loading and caching library for Android focused on smooth scrolling
-
Firebase
implementation 'com.google.firebase:firebase-analytics:17.2.2'
-
Firebase Realtime DB
implementation 'com.google.firebase:firebase-database-ktx:19.3.0'
-
Firebase Authentication
implementation 'com.google.firebase:firebase-auth-ktx:19.3.1'
-
Firebase UI Auth :
implementation 'com.firebaseui:firebase-ui-auth:6.2.0'
-
Firebase messaging for ntifications:
implementation 'com.google.firebase:firebase-messaging:20.2.0'
-
Glide
implementation 'com.github.bumptech.glide:glide:4.11.0'