Skip to content

Easily bind Firebase data to your Composables.

License

Notifications You must be signed in to change notification settings

thatfiredev/firebase-compose

Repository files navigation

Firebase Compose

Firebase Compose is an Open Source library for Android that allows you to quickly connect a Jetpack Compose app to Firebase APIs.

Table of contents

  1. Usage
  2. Installation
  3. Dependencies
    1. Compatibility
  4. Sample App
  5. Contributing
  6. License
  7. Acknowledgment

Usage

Firebase Compose has separate modules for using Firebase Realtime Database and Cloud Firestore. To get started, see the individual instructions for each module:

Installation

Firebase Compose is published as a collection of libraries separated by the Firebase API they target. Each Firebase Compose library has a transitive dependency on the appropriate Firebase SDK so there is no need to include those separately in your app.

Step 1 - Add the jitpack maven in your root build.gradle at the end of repositories:

    allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }

Step 2 - In your app/build.gradle file add a dependency on one of the Firebase Compose libraries.

dependencies {
    // Firebase Compose for Firebase Realtime Database
    implementation 'com.github.rosariopfernandes.firebase-compose:database:1.0.0-beta01'

    // Firebase Compose for Cloud Firestore
    implementation 'com.github.rosariopfernandes.firebase-compose:firestore:1.0.0-beta01'
}

After the project is synchronized, we're ready to start using Firebase functionality in our Compose app.

Dependencies

Compatibility with Firebase libraries

Firebase Compose libraries have the following transitive dependencies on the Firebase SDK:

firebase-compose:database
|--- com.google.firebase:firebase-database-ktx

firebase-compose:firestore
|--- com.google.firebase:firebase-firestore-ktx

Sample app

A sample app is available in the demo directory.

Contributing

Anyone and everyone is welcome to contribute. Please take a moment to review the contributing guidelines.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgment

README files inspired by FirebaseUI