Bird
Raised Fist0
Firebasecloud~10 mins

Why Firestore is Firebase's primary database - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to initialize Firestore in a Firebase app.

Firebase
const db = firebase.[1]();
Drag options to blanks, or click blank then click option'
Astorage
Bauth
Cfirestore
Ddatabase
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'database()' initializes the Realtime Database, not Firestore.
2fill in blank
medium

Complete the code to add a document to a Firestore collection.

Firebase
db.collection('users').[1]({ name: 'Alice', age: 30 });
Drag options to blanks, or click blank then click option'
Aadd
Bset
Cupdate
Dget
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'set' on a collection causes an error.
3fill in blank
hard

Fix the error in the code to get a document by ID from Firestore.

Firebase
db.collection('users').doc([1]).get().then(doc => { if (doc.exists) { console.log(doc.data()); } });
Drag options to blanks, or click blank then click option'
AdocId
BuserId
Cuser.id
D'userId'
Attempts:
3 left
💡 Hint
Common Mistakes
Passing variable names without quotes when they are not defined.
4fill in blank
hard

Fill both blanks to query Firestore for users older than 25 and order by age.

Firebase
db.collection('users').where('age', [1], 25).[2]('age').get();
Drag options to blanks, or click blank then click option'
A>
BorderBy
C<
Dlimit
Attempts:
3 left
💡 Hint
Common Mistakes
Using '<' instead of '>' for filtering older users.
5fill in blank
hard

Fill all three blanks to update a user's email and log success.

Firebase
db.collection('users').doc([1]).[2]({ email: [3] }).then(() => { console.log('Email updated'); });
Drag options to blanks, or click blank then click option'
A'user123'
Bupdate
C'newemail@example.com'
Dset
Attempts:
3 left
💡 Hint
Common Mistakes
Using set overwrites the whole document.

Practice

(1/5)
1. Why is Firestore considered Firebase's primary database?
easy
A. Because it only stores data temporarily
B. Because it requires manual scaling for large apps
C. Because it updates data in real time and works offline
D. Because it does not support security rules

Solution

  1. Step 1: Understand Firestore's real-time update feature

    Firestore automatically updates data in real time, so apps stay current without manual refresh.
  2. Step 2: Recognize offline support and automatic scaling

    Firestore works offline and scales automatically, making it easy to use and reliable.
  3. Final Answer:

    Because it updates data in real time and works offline -> Option C
  4. Quick Check:

    Real-time + offline = Firestore primary [OK]
Hint: Remember Firestore updates live and works offline [OK]
Common Mistakes:
  • Thinking Firestore needs manual scaling
  • Believing Firestore lacks security rules
  • Confusing Firestore with temporary storage
2. Which of the following is the correct way to define a Firestore collection reference in Firebase SDK?
easy
A. const ref = firestore.collection('users');
B. const ref = firestore.getCollection('users');
C. const ref = firestore.users.collection();
D. const ref = firestore.collection.users();

Solution

  1. Step 1: Recall Firestore collection syntax

    The correct method to get a collection reference is firestore.collection('collectionName').
  2. Step 2: Check each option's syntax

    Only const ref = firestore.collection('users'); uses the correct method name and syntax.
  3. Final Answer:

    const ref = firestore.collection('users'); -> Option A
  4. Quick Check:

    Use .collection('name') to get collection [OK]
Hint: Use .collection('name') to get Firestore collections [OK]
Common Mistakes:
  • Using getCollection instead of collection
  • Accessing collection as a property
  • Calling collection as a method on collection
3. Given this Firestore query code, what will be the output if the 'users' collection has documents with fields {name: 'Alice', age: 30} and {name: 'Bob', age: 25}?
const snapshot = await firestore.collection('users').where('age', '>', 26).get();
const names = snapshot.docs.map(doc => doc.data().name);
console.log(names);
medium
A. ['Alice']
B. ['Bob']
C. ['Alice', 'Bob']
D. []

Solution

  1. Step 1: Analyze the query condition

    The query filters users where age is greater than 26.
  2. Step 2: Check which users match the condition

    Alice is 30 (matches), Bob is 25 (does not match).
  3. Final Answer:

    ['Alice'] -> Option A
  4. Quick Check:

    Age > 26 returns Alice only [OK]
Hint: Filter by age > 26 returns only Alice [OK]
Common Mistakes:
  • Including Bob who is 25
  • Returning empty array by mistake
  • Returning both users ignoring filter
4. Which of the following correctly describes this Firestore security rule snippet?
service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{userId} {
      allow read, write: if request.auth.uid == userId;
    }
  }
}
medium
A. It does not allow any access to users
B. It allows read and write only if user is authenticated and matches userId
C. It allows access without authentication
D. It has syntax errors in the match statements

Solution

  1. Step 1: Understand the rule condition

    The rule allows read and write only if the authenticated user's ID matches the document's userId.
  2. Step 2: Check for errors or incorrect logic

    The syntax is correct and the logic restricts access properly.
  3. Final Answer:

    It allows read and write only if user is authenticated and matches userId -> Option B
  4. Quick Check:

    Auth check with userId match = correct rule [OK]
Hint: Check if auth uid matches userId for access [OK]
Common Mistakes:
  • Thinking it allows access without auth
  • Assuming syntax errors exist
  • Believing it denies all access
5. You want to build a chat app that works offline and syncs messages automatically when online. Why is Firestore the best choice for this?
hard
A. Because Firestore only stores data temporarily in memory
B. Because Firestore requires manual syncing and no offline support
C. Because Firestore does not support real-time updates
D. Because Firestore supports offline data persistence and real-time syncing

Solution

  1. Step 1: Identify offline support in Firestore

    Firestore caches data locally, so apps work offline without errors.
  2. Step 2: Recognize real-time syncing feature

    When online, Firestore syncs changes automatically to keep data updated.
  3. Step 3: Compare with other options

    Options A, B, and D contradict Firestore's key features.
  4. Final Answer:

    Because Firestore supports offline data persistence and real-time syncing -> Option D
  5. Quick Check:

    Offline + real-time sync = Firestore best for chat [OK]
Hint: Offline persistence + real-time sync = Firestore wins [OK]
Common Mistakes:
  • Thinking Firestore needs manual sync
  • Believing Firestore lacks offline support
  • Confusing Firestore with temporary storage
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard