| name | firebase-operations |
| description | Performs Firebase Firestore operations. Use when querying collections, creating/updating/deleting documents, using batch writes, or working with Timestamps. Includes pagination, transactions, and security rules patterns. |
Firebase Operations Skill
Instructions
- Import
getAdminDb, COLLECTIONS from @/lib/firebase-admin
- Use
Timestamp.now() for timestamps
- Convert to ISO string for API responses:
createdAt.toDate().toISOString()
- Use batch writes for multiple operations (max 500)
- Use transactions for atomic operations
Quick Reference
import { getAdminDb, COLLECTIONS } from '@/lib/firebase-admin'
import { Timestamp, FieldValue } from 'firebase-admin/firestore'
const doc = await db.collection(COLLECTIONS.PROJECTS).doc(id).get()
const now = Timestamp.now()
await docRef.set({ ...data, createdAt: now, updatedAt: now })
await docRef.update({ field: value, updatedAt: Timestamp.now() })
await docRef.update({ likes: FieldValue.increment(1) })
For complete operations (batch writes, transactions, pagination, queries), see reference.md.