Sync Firestore with Activity Feeds

Stream
Made by Stream

Populates Stream Activity feeds using documents in a Firestore.

How this extension works

Use this extension to automatically create Activity Feeds from data in a Firestore collection.

The extension listens for Firestore write events and synchronizes corresponding activities in Stream’s Activity Feeds. The Firestore documents are expected to be stored with the following path, where feeds is customizable via the COLLECTION parameter:

feeds/{feedId}/{userId}/{foreignId}

The stored documents must have at least the following fields:

  • actor: the entity performing the activity
  • verb: the type of action performed on the activity
  • object: the content of the activity itself (often a reference)

For more details, see the Stream Activity Feeds documentation.

Additional Setup

Before installing this extension, make sure that you've set up a Cloud Firestore database in your Firebase project.

You must also have a Stream Activity Feeds app set up before installing this extension. You can do so on the Stream site.

Billing

This extension uses the following Firebase services, which may have associated charges:

  • Cloud Functions
  • Secret Manager
  • Cloud Firestore

This extension also uses the following third-party services:

You are responsible for any costs associated with your use of these services.

Note from Firebase

To install this extension, your Firebase project must be on the Blaze (pay-as-you-go) plan. You will only be charged for the resources you use. Most Firebase services offer a no-cost tier for low-volume use. Learn more about Firebase billing.

You will be billed a small amount (typically less than $0.10) when you install or reconfigure this extension. See Cloud Functions under Firebase Pricing for a detailed explanation.

How to install this extension

Using the Firebase console

To install and manage extensions, you can use the Firebase console.

Install using console

Using the Firebase CLI

To install and manage extensions, you can also use the Firebase CLI:

Step 1: Run the following npm command to install the CLI or update to the latest CLI version.

npm install -g firebase-tools
Doesn't work? Take a look at the Firebase CLI reference or change your npm permissions.

Step 2: Set up a new Firebase project directory or navigate to an existing one

Step 3: Add this extension to your extension manifest by running

firebase ext:install stream/firestore-activity-feeds --local --project=projectId_or_alias

Step 4 (Optional): Test this extension locally with the Firebase Emulator Suite

firebase emulators:start

Step 5: Deploy the extensions in your manifest to your project

firebase deploy --only extensions --project=projectId_or_alias
Author
License
Apache-2.0
Version
0.1.1