Google's Firestore and Datastore emulators, one flag away.
Documents, entities, collections and kinds on Google's own emulators, opt-in with --services.
Backed by: Google's Firestore and Datastore emulators Google's emulator
In the console
What it covers
Firestore and Datastore run on Google’s own emulators and start when you ask for them with --services. Each has an official emulator variable, so an application needs no code change. RPCs a test drives are Verified; every other RPC is Unknown, so nothing is claimed for it.
- Firestore documents and collections through the official SDKs
- Datastore entities and kinds through the official SDKs
- Queries and transactions
Tested snippet
From docs/examples/ at main 82a2eb9. CI runs these blocks against CloudBurrow.
import assert from 'node:assert/strict';
import { randomUUID } from 'node:crypto';
import { Firestore } from '@google-cloud/firestore';
const db = new Firestore({ projectId: process.env.GOOGLE_CLOUD_PROJECT });
const doc = db.collection(`example-${randomUUID()}`).doc('hello');
await doc.set({ greeting: 'hello' });
assert.equal((await doc.get()).get('greeting'), 'hello');
await doc.delete();
await db.terminate();
This block is run by CloudBurrow's Node.js suite in CI. If it stops working, CI fails. docs/examples/node.md
What's verified
Firestore
Not in v0.1.0's coverage table.
4 of 17 RPCs Verified on main next release
Datastore
Not in v0.1.0's coverage table.
4 of 8 RPCs Verified on main next release
Not supported
- In memory, except Datastore in persistent mode #307
- Other methods are Unknown: served by Google's emulator, not yet driven by a test, so not claimed
Source: docs/compatibility.md at main 82a2eb9.
Questions
Does Firestore data survive a restart?
Build against Google Cloud APIs, locally
Free and open source under Apache-2.0. No account, no sign-up, no Google Cloud bill.