Extension to easily explore and manage your Firebase Firestore database documents right inside your editor.
- Activity Bar Integration: Navigate your Firestore collections and documents through a dedicated view in the Activity bar.
- Direct Editing: Open Firestore documents as JSON files. Edit them directly in the editor and save to push updates back to Firestore.
- Add & Delete: Create/Delete documents and collections directly from the tree view. Includes strict double-confirmations for deletions to prevent accidental data loss.
- Duplicate Document: Quickly clone an existing document into a new one (with custom or auto-generated ID).
- Subcollections Support: Easily navigate and manage subcollections within documents. Add new subcollections on the fly.
- Pagination: Browse large collections with ease. Customizable page size and "Load More" functionality.
- Advanced Querying: Filter documents within a collection using field-based queries (e.g.,
name == "John") and clear filters when needed. - Refresh Support: Quickly refresh the Firestore tree to see the latest changes.
- Secure Configuration: Configurable via service account key path or environment variables.
- Custom Databases: Support for named Firestore database instances.
- Safety First: Explicit save and deletion confirmations, plus options to completely block document updates or deletions for view-only modes.
- Project and Database Context: Displays the configured project and database in the tree view.
To use the extension, you need to provide a Firebase service account key from your Firebase project.
There are three ways to do this:
- Google Cloud Application Default Credentials (ADC): The recommended way if using the
gcloudCLI. Ensure you are logged in viagcloud auth application-default loginand enable thefirestoreManager.useGcloudAuthsetting. - Environment Variable: Set the
GOOGLE_APPLICATION_CREDENTIALSenvironment variable to the path of your JSON key. The extension will automatically use this.export GOOGLE_APPLICATION_CREDENTIALS="/path/to/key.json"
- VS Code Settings: Configure it through the Settings UI or
settings.jsonby settingfirestoreManager.serviceAccountKeyPathto the path of your JSON key.
firestoreManager.useGcloudAuth: Set totrueto usegcloud auth application-default logininstead of a service account key.firestoreManager.serviceAccountKeyPath: Absolute path to the service account JSON key (Only if not usinguseGcloudAuthorGOOGLE_APPLICATION_CREDENTIALS).firestoreManager.projectId: The project ID for your Firebase app. When empty, it can be detected from the credentials.firestoreManager.databaseId: The ID of the Firestore database. Defaults to(default).firestoreManager.pageSize: Number of documents to show per page. Defaults to10.firestoreManager.disableSaveConfirmation: Set totrueto disable the confirmation dialog when saving documents. Defaults tofalse.firestoreManager.disableSecondDeletePrompt: Set totrueto skip the secondary confirmation step when deleting documents or collections. Defaults tofalse.firestoreManager.blockDocumentUpdate: Set totrueto completely block the ability to update existing documents. Defaults tofalse.firestoreManager.blockDocumentDelete: Set totrueto completely block the ability to delete documents or collections. Defaults tofalse.
- Initialize: Run
Firestore Manager: Initializefrom the Command Palette (Ctrl+Shift+P) or configure the settings directly. - Configure credentials: Provide a service-account key path, set
GOOGLE_APPLICATION_CREDENTIALS, or enablefirestoreManager.useGcloudAuthafter runninggcloud auth application-default login. - Explore: Open the Firestore view in the Activity Bar. The tree displays the project, database, collections, documents, and subcollections.
- Manage documents:
- Select a document to open it as a JSON virtual file.
- Edit and save (
Ctrl+S) to write changes back to Firestore. - Right-click a collection to add a document, delete the collection, or query its documents.
- Right-click a document to delete or duplicate it, or add a subcollection.
- Use Clear Query to remove an active collection filter.
- Use the Refresh icon in the view title to reload the tree.
- Use Load More... at the bottom of a collection to fetch another page of documents.
When using the Query Documents command, use the following format:
field operator value
Example:
isActive == trueage >= 21name == "John"score > 100
Supported operators: ==, !=, <, <=, >, >=, array-contains, in, not-in, array-contains-any.
Query values are parsed from the entered text. Use JSON-compatible values such as true, 21, arrays, or quoted strings where appropriate.
- VS Code 1.107.0 or higher
This project is licensed under the MIT License. See LICENSE.md for details.
If you find this extension useful, consider supporting its development by buying me a coffee! Your support helps me continue improving and maintaining the extension.

