-
Notifications
You must be signed in to change notification settings - Fork 79
Installation and Activation
- Install this plugin:
- [recommended] Copy this repository and extract all of the
GodotFirebase-main
contents (addons/
folder including.env
file) to the root of your project atres://
--- or --- - [not recommended - always check version] Install this addon from the AssetLibrary inside Godot Engine's Editor: go to the
AssetLib
panel on the top bar and look forGodotFirebase
. When choosing which folders to install, only checkaddons/
folder and.env
file
- [recommended] Copy this repository and extract all of the
- Open your Project Settings
- Go to Plugins
- Activate the GDFirebase plugin
- From there, you will have an autoload singleton with the variables Auth and Database. Reference it by using Firebase.Auth, etc.
-
Go create a Firebase app at console.firebase.google.com. A Guide can be found Here
-
Once the app has been created, add a web app to it:
-
Click on the Project Settings option
-
Click on the Add App button
-
Click the Web App button
-
Add a name to your web app and click Register App
-
-
This will show a series of values called "config". To use them you have to:
- Create an
.env
file at the root of the GodotFirebase plugin (specifically,res://addons/godot-firebase/.env
). Specify those values as environment variables in this file (see example structure below). If you would rather use our example, renameres://addons/godot-firebase/example.env
to.env
and fill out the values according to your associated Firebase Config file that you got from your project.
- Create an
[firebase/environment_variables]
"apiKey"=""
"authDomain"=""
"databaseURL"=""
"projectId"=""
"storageBucket"=""
"messagingSenderId"=""
"appId"=""
"measurementId"=""
"clientId"=""
"clientSecret"=""
"domainUriPrefix"=""
"functionsGeoZone"=""
"cacheLocation"=""
[firebase/emulators/ports]
authentication=""
firestore=""
realtimeDatabase=""
functions=""
storage=""
dynamicLinks=""
In order to let users login with their own Google account to your app, the OAuth authentication process must be configured to work with this Plugin.
This process will not be enabled with the main configuration, but still it is not mandatory to use standard login methods.
To enable Google OAuth Authentication, follow these steps:
- In your project, enable "Google" in "Sign-in Method":
- Go to console.cloud.google.com/apis/credentials:
- Select the project you are working on (and eventually, your organization):
- Press the "+ Create Credentials" button and chose "ID Client OAuth" to register new credentials:
- Select Desktop Application, then give a name to your credentials:
- Create your credentials and copy-paste them in the configuration file
.env
, or directly in your code:
When exporting your app for any platform at your choice, please make sure to let the engine know that the ".env" file is a resource that must be exported too.
By default Godot will not export all those resources it doesn't consider necessary for your app to optimize its size.
To make sure .env will be included in your binaries,
Note: remember that when exporting your app in Text or Compiled mode, your files will still be accessible with some reverse engineering. To make sure your files won't be readable even if reverse engineered, compile with an encryption key.
Due to how Android handles permissions for Android Apps, you will need to enable at a minimum the following Permissions
in your Android export template.
- Access Network State
- Internet
If you do not enable these when exporting, the plugin will be unable to connect to the internet, and you will see issues like auth errors.