Firestore Database Examples

Real-time database operations with Firestore.

Create (Add)

const docRef = await addDoc(
  collection(db, 'items'),
  {
    name: 'My Item',
    description: 'Description',
    createdAt: new Date()
  }
);

Read (Query)

const q = query(
  collection(db, 'items'),
  where('name', '==', 'My Item')
);
const snapshot = await getDocs(q);
snapshot.forEach(doc => {
  // Process doc
});

Update

await updateDoc(
  doc(db, 'items', docId),
  {
    description: 'Updated'
  }
);

Delete

await deleteDoc(
  doc(db, 'items', docId)
);

Tips:

  • Always use client-side components for database operations
  • Use client:load directive in your Astro components
  • Implement proper error handling
  • Use security rules in Firebase console