All Projects → CodingDoug → universal-translator

CodingDoug / universal-translator

Licence: Apache-2.0 license
Demo app using Firebase and Google Cloud products to implement a "universal translator"

Programming Languages

kotlin
9241 projects
typescript
32286 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to universal-translator

rowy
Open-source Airtable-like experience for your database (Firestore) with GCP's scalability. Build any automation or cloud functions for your product. ⚡️✨
Stars: ✭ 2,676 (+7132.43%)
Mutual labels:  google-cloud, cloud-functions, firestore
foundry-cli
Foundry makes the development of Firebase Functions fast by giving you an out-of-the-box working cloud environment for your development with an access to your production data. It's a CLI tool that gives you a continuous REPL-like feedback about your Firebase Functions.
Stars: ✭ 49 (+32.43%)
Mutual labels:  cloud-functions, firestore
nx-extend
Nx Workspaces builders and tools
Stars: ✭ 67 (+81.08%)
Mutual labels:  google-cloud, cloud-functions
functions-framework-php
FaaS (Function as a service) framework for writing portable PHP functions
Stars: ✭ 186 (+402.7%)
Mutual labels:  google-cloud, cloud-functions
Google Cloud Java
Google Cloud Client Library for Java
Stars: ✭ 1,606 (+4240.54%)
Mutual labels:  google-cloud, cloud-storage
Google Cloud Go
Google Cloud Client Libraries for Go.
Stars: ✭ 2,720 (+7251.35%)
Mutual labels:  google-cloud, cloud-storage
fireschema
Strongly typed Firestore framework for TypeScript
Stars: ✭ 193 (+421.62%)
Mutual labels:  cloud-functions, firestore
argon
Campaign Manager 360 and Display & Video 360 Reports to BigQuery connector
Stars: ✭ 31 (-16.22%)
Mutual labels:  google-cloud, cloud-functions
dataflow-contact-center-speech-analysis
Speech Analysis Framework, a collection of components and code from Google Cloud that you can use to transcribe audio files to create analytics.
Stars: ✭ 46 (+24.32%)
Mutual labels:  google-cloud, cloud-functions
app
Source code of intencje.pl website and mobile/desktop apps based on Angular, Firebase, and Capacitor.
Stars: ✭ 12 (-67.57%)
Mutual labels:  cloud-functions, firestore
Firegraph
GraphQL Superpowers for Google Cloud Firestore
Stars: ✭ 80 (+116.22%)
Mutual labels:  google-cloud, firestore
storage-abstraction
Provides an abstraction layer for interacting with a storage; the storage can be local or in the cloud.
Stars: ✭ 36 (-2.7%)
Mutual labels:  google-cloud, cloud-storage
Wild Workouts Go Ddd Example
Complete application to show how to apply DDD, Clean Architecture, and CQRS by practical refactoring of a Go project.
Stars: ✭ 756 (+1943.24%)
Mutual labels:  google-cloud, firestore
serverless-rest-api
Building RESTful Web APIs with Firebase Cloud Function, Firestore, Express and TypeScript
Stars: ✭ 103 (+178.38%)
Mutual labels:  cloud-functions, firestore
Awesome Firebase
🔥 List of Firebase talks, tools, examples & articles! Translations in 🇬🇧 🇷🇺 Contributions welcome!
Stars: ✭ 448 (+1110.81%)
Mutual labels:  google-cloud, firestore
firebase-jest-testing
Firebase back-end testing, using Jest.
Stars: ✭ 21 (-43.24%)
Mutual labels:  cloud-functions, firestore
end-to-end-machine-learning-with-google-cloud
End to End Machine Learning with Google Cloud Platform
Stars: ✭ 39 (+5.41%)
Mutual labels:  google-cloud, cloud-functions
iris3
An upgraded and improved version of the Iris automatic GCP-labeling project
Stars: ✭ 38 (+2.7%)
Mutual labels:  google-cloud, cloud-storage
serverless-ktp-ocr
Serverless Indonesian Identity E-KTP OCR with Google Cloud Platform (GCP) - Cloud Functions, Cloud Storage, and Cloud PubSub
Stars: ✭ 54 (+45.95%)
Mutual labels:  cloud-storage, cloud-functions
barber-shop
Vue + Firebase (cloud functions, auth, firestore, hosting) reservations system
Stars: ✭ 47 (+27.03%)
Mutual labels:  cloud-functions, firestore

BabelFire - a universal translator

This is a Firebase and Google Cloud powered app used for demo purposes. It implements a "universal translator", where an Android client app records some speech, uploads it to Google Cloud, and receives translations in a variety of languages. A client web app also receives the translates and speaks them out loud using the browser's speech synthesis API.

This is a rewrite of Jen Tong's similar project.

What's here

At the top level, you'll find:

  • android - Android app that receives speech and uploads it to Google Cloud for processing
  • backend - TypeScript for Cloud Functions on the backend
  • web - and the JS / HTML translation viewer

Setup

This setup assumes you are already familiar with how Firebase and Google Cloud projects work.

Project setup

  1. Create a Firebase project in the Firebase console
  2. Go to the Authentication product tab and enable Google authentication.
  3. Go to the Database product tab and enable Cloud Firestore.
  4. Go to the Storage product tab and enable Cloud Storage.
  5. Enable Blaze plan billing on the project (required for the Google Cloud APIs used here)
  6. In the Cloud console for the same project, enable both the Cloud Translation API and the Cloud Speech-to-Text API.
  7. Install the Firebase CLI
  8. Clone this repo.

Backend project setup

  1. cd backend
  2. firebase use --add, then select the newly created project, and give it the alias "default"
  3. cd functions; npm install to set up the Cloud Functions node project.
  4. firebase deploy to deploy Cloud Functions code, Firestore security rules, and Cloud Storage security rules
  5. Optional - if you want to run the scripts in functions/dev, download a service account and place it in service-account-credentials.json in the functions folder.

Web app setup

  1. cd web
  2. firebase use --add, then select the newly created project, and give it the alias "default"
  3. firebase deploy to deploy the web app to Firebase Hosting
  4. Note the given URL for the web site

Android app setup

  1. cd android
  2. Add the app to your project in the Firebase console, and be sure to provide the SHA-1 of your debug signing key
  3. Download the google-services.json file for your project from the Firebase console, move it to the app folder
  4. ./gradlew assembleDebug
  5. Install the APK on your emulator or device

Use the demo app

  1. Open the web app using the URL given after it was deployed (*.firebaseapp.com)
  2. Select the language in which you want to hear a translation
  3. Launch the Android app
  4. Select the language you want to translate from the dropdown
  5. Push the record button, speak in that language, then push the button again
  6. Wait for the translations to appear in both the Android app and the web app. The web app will also speak it out loud in the selected language

Firebase and Google Cloud products used

Contributing

Please read and follow the steps in the CONTRIBUTING.md

License

The code in this project is licensed under the Apache License 2.0.

Copyright 2018 Google LLC

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Disclaimer

This is not an officially supported Google product.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].