This course is available as part of the Professional subscription. To learn more click here

Build an App Like Discord with Firebase

Nov 18 2020 · Video Course (2 hrs, 6 mins) · Intermediate

Learn how to create a messaging app like Discord or Slack using Firebase! Firebase is one of the most popular mobile development platforms out there that helps you implement authentication and a realtime database for your apps.

2.2/5 5 Ratings


  • Kotlin 1.4, Android 5.1, Android Studio 4

Build the UI

Build a login screen with authentication to verify that users are who they say they are.


Your login screen is ready, but your users need to be able to create their own accounts. Work on the layout for the sign up screen.


Create the layout for a single channel in your app. This layout will contain an icon, a channel name and a description.


Build the layout for the messages that our users are going to send to each other, containing text, a username and a timestamp.


No chat app is complete without a chat screen. Create the layout for the chat screen on which the users can read and write messages.


Create the layout for a dialog that will display to users who wish to create a new channel.


The layout of your dialog is ready. Now you need to create the fragment that will handle functionality such as calling the appropiate web services.


Use Firebase to Build the Backend

Create a firebase account, then set up a new firebase project to use in your app.


Learn how to enable and configure email authentication for your Android app using Firebase.


In this episode, learn how to add login capabilities to your app using Firebase.


Allow users to create new accounts by submitting an email and password.


Enable Cloud Firestore using the Firebase console, and learn about the two different kinds of databases that Firebase has to offer.


Learn how to create documents and collections using the Firebase console.


Create the Firestore adapter that will be used by the adapters of our app.


In this episode, create the channel adapter for our channels screen.


Create the adapters for our screens, then add a backend to the dialog you previously created to allow users to create new channels with a name and description.


Learn how to use the previously created adapters to display channels in your Recycler View.


Almost there! In this lesson, finally start sending and receiving messages with your app.


Give your users the ability to create new channels using a dialog, and revel in your completed app!


Who is this for?

Intermediate level Android developers who are interested in learning how to use Firebase by creating a fun app like Slack or Discord. This course expects you to be familiar with Android Studio and Kotlin programming.

Covered concepts

  • Creating a UI
  • Creating a Firebase Account
  • Setting Up Firebase
  • Firebase Data Structure
  • Firebase Authentication
  • Firebase Realtime Database