Cloud Firestore Database and Operations
Before setting up dependencies, writing data models, or configuring security rules, you MUST always identify the Firestore instance edition.
1. Instance Selection and Edition Detection
Run the following command to list current Firestore databases: bash npx -y firebase-tools@latest firestore:databases:list
A. Instance Found
- For each database found, inspect its edition and details:
bash npx -y firebase-tools@latest firestore:databases:get <database-id> - Ask the user which database instance they wish to target or if they would prefer to create a new instance.
- Once the target instance is established:
- If the
editionisSTANDARD, follow the guides underreferences/standard/. - If the
editionisENTERPRISEor native mode, follow the guides underreferences/enterprise/.
- If the
B. No Instance Found (or New Requested)
If no databases exist or the user requests a new one, default to provisioning an
Enterprise edition database: bash npx -y firebase-tools@latest firestore:databases:create <database-id> --edition="enterprise" --location="nam5" - Proceed with using the guides under
references/enterprise/.
2. Specialized Guides
Based on the identified or created instance edition, open and read the corresponding reference guides:
Standard Edition (references/standard/)
- Provisioning: Read provisioning.md
- Security Rules: Read security_rules.md
- SDK Usage: Read web_sdk_usage.md, android_sdk_usage.md, ios_setup.md, or flutter_setup.md
- Indexes: Read indexes.md
Enterprise Edition / Native Mode (references/enterprise/)
- Provisioning: Read provisioning.md
- Data Model: Read data_model.md
- Security Rules: Read security_rules.md
- SDK Usage: Read web_sdk_usage.md, python_sdk_usage.md, android_sdk_usage.md, ios_setup.md, or flutter_setup.md
- Indexes: Read indexes.md