This page describes the SDKs and client libraries available for the Firebase API. While you can make direct HTTP and RPC calls to the Firebase API, the Firebase client libraries implement best practices for you and make it easier to access your database.
Firebase supports mobile or web SDKs and server client libraries.
Mobile and web SDKs
Firebase supports SDKs for Android, iOS, and web. Combined with Firebase security rules and Firebase Auth, the mobile and web SDKs support serverless app architectures where clients connect directly to your Firebase database. With a serverless architecture, you don't need to maintain an intermediary server between your clients and your Firebase database.
The mobile and web SDKs also support realtime updates and offline data persistence.
To get started with the Android, Apple platforms, or Web SDK, see Get started with Firebase.References and resources
For more information about each SDK, see the following resources:
Web
In addition to the standard client SDK, Firebase offers Firestore Lite, a lightweight, REST-only SDK.
iOS+
Android
Flutter
Server client libraries
Firebase supports server client libraries for C#, Go, Java, Node.js, PHP, Python, and Ruby. Use these client libraries to set up privileged server environments.
Server client libraries create a privileged Firebase environment with full access to your database. In this environment, requests are not evaluated against your Firebase security rules. Privileged Firebase servers are secured using Identity and Access Management (IAM), see Security for server client libraries.
Use the server client libraries for administrative database tasks or if you prefer an architecture with an intermediary server between your users and your Firebase database.
Firebase server client libraries are available as Firebase Admin SDKs and as Google Cloud client libraries. Both sets of libraries provide the same Firebase features. The Firebase Admin SDKs bundle access to Firebase and several other Firebase products, like Firebase Auth and Firebase Cloud Messaging, in a single library.
Firebase Admin SDKs
The Firebase Admin SDKs bundle the Google Cloud client libraries for Firebase alongside client libraries and SDKs for several other Firebase features. Using one of the Admin SDKs, you can initialize access to Firebase and several other services from a single SDK. The Firebase Admin SDKs support Firebase access in Java, Python, Node.js, and Go.
To get started with a Firebase Admin SDK, see Add the Firebase Admin SDK to Your Server.
References and resources
For more information about Firebase Admin SDKs, see the following resources:
Java
Python
Node.js
Go
Google Cloud client libraries
The Google Cloud client libraries support Firebase access in Java, Python, Node.js, Go, PHP, C#, and Ruby. To get started with one of the Google Cloud client libraries, see the Quickstart using a Server Client Library.
References and resources
For more information about Google Cloud client libraries for Firebase, see the following resources:
Java
Python
Node.js
Go
PHP
C#
Ruby
Third-party library integrations
In addition to the mobile or web SDKs and server client libraries, Firebase offers a number of integrations with open-source libraries. For more information, see Library and framework integrations.