Translate Text in Firestore

Made by Firebase

Translates strings written to a Cloud Firestore collection into multiple languages (uses Cloud Translation API).

4K+
installs
Works with
Cloud Firestore
Version
0.1.21 | Source code
Tags
ai
License
Apache-2.0
Publisher
Firebase
Report
Bug
Abuse

How this extension works

Use this extension to translate strings (for example, text messages) written to a Cloud Firestore collection.

This extension listens to your specified Cloud Firestore collection. If you add a string to a specified field in any document within that collection, this extension:

  • Translates the string into your specified target language(s); the source language of the string is automatically detected.
  • Adds the translation(s) of the string to a separate specified field in the same document.

You specify the desired target languages using ISO-639-1 codes. You can find a list of valid languages and their corresponding codes in the Cloud Translation API documentation.

If the original non-translated field of the document is updated, then the translations will be automatically updated, as well.

Multiple collections for translations

To translate multiple collections, install this extension multiple times, specifying a different
collection path each time. There is currently no limit on how many instances of an extension you
can install.

Multiple field translations

To translate multiple fields, store a map of input strings in the input field:

admin.firestore().collection('translations').add({
  first: "My name is Bob",
  second: "Hello, friend"
})

Multiple languages

To translate text into multiple languages, set the languages parameter to a comma-separated list
of languages, such as en,fr,de. See the supported languages list.

Additional setup

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

AI Translations using Gemini

This extension optionally supports using Gemini 1.5 Pro as an alternative to the Google Cloud Translation API for performing translations.

The extension accesses the Gemini API via Google AI, and will require an API key to be provided upon installation. You may create an API key here.

A large language model like Gemini 1.5 Pro may have more contextual understanding. For example in the sentence I left my keys in the bank the model may understand whether bank refers to a financial institution or a riverbank, and may provide a more accurate translation.

It is important to note that Gemini should only be used with sanitized input, as prompt injection is a possibility.

Notes:
  • Using the Gemini API may have a different pricing model than the Cloud Translation API.

Billing

To install an extension, your project must be on the Blaze (pay as you go) plan

  • You will be charged a small amount (typically around $0.01/month) for the Firebase resources required by this extension (even if it is not used).
  • This extension uses other Firebase and Google Cloud Platform services, which have associated charges if you exceed the service’s no-cost tier:
    • Cloud Translation API
    • Cloud Firestore
    • Cloud Functions (Node.js 10+ runtime. See FAQs)