-
Notifications
You must be signed in to change notification settings - Fork 84
Installation and Activation
- Copy the folder GDFirebase to the project path
res://addons/
- 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 two options:
-
Take those values and copy them to the appropriate variables in
res://addons/godot-firebase/Firebase.gd
. -
(Recommended) Create a
override.cfg
file at the root of the project (specifically,res://override.cfg
). Specify those values as environment variables in this file (see example structure below). Reload the project, and you will find a new category insideProject ↝ Project Settings ↝ General ↝ Firebase
, which isEnvironment Variables
. Fill all the fields inside this new category and you will be good to go.
-
[firebase/environment_variables]
apiKey=""
authDomain=""
databaseURL=""
projectId=""
storageBucket=""
messagingSenderId=""
appId=""
measurementId=""
NOTE: this image is just for demonstration purposes. Edit API keys directly inside the override.cfg file, and not from Project Settings, since with current Godot version this setup won't work.
- Use
Firebase.Database.get_database_reference(path, filter)
to add a listener at a given path in your database. It will return to you a value to which you can hook up to a few different signals, and to which you can push data. You do not have to manually add it to the scene tree, as it gets added automatically. You can listen to many places at once, as needed. You can, optionally, pass a Dictionary of tags (found in FirebaseDatabase) to values representing your filters and queries. Queries are currently cached, so they can't be dynamically updated, but I can add that if there's a desire.
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
override.cfg
, or directly in your code: