fireorm is a lightweight ORM wrapper around firebase-admin for Firestore, version 0.23.3 (latest). It provides a repository pattern on top of Firestore, abstracting CRUD operations with decorators like @Collection. Unlike raw Firestore SDK, fireorm lets you define models as TypeScript classes and persist them without writing collection references. It is community-maintained, with infrequent releases, and relies on reflect-metadata for decorator support. Currently stable but not actively developed; use with caution for new projects.
npm install fireormNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Demonstrates initialization, model definition with @Collection, and CRUD operations using getRepository.
Update code to call initialize(firestore) where firestore is the Firestore instance obtained from admin.firestore().
Use separate collections with references instead of subcollections.
Add import 'reflect-metadata' at the top of your entry file.
Import { Type } from 'class-transformer' and decorate fields with @Type(() => GeoPoint) etc.Update code to handle returned entity, e.g., const saved = await repo.create(todo);
Use raw firebase-admin Firestore for transactions if needed.
Add 'import 'reflect-metadata'' at the very top of your entry file, before any fireorm imports.
Ensure you call initialize(firestore) with a valid admin.firestore() instance after Firebase app initialization.
Add 'id: string;' to your model class. The id is automatically generated if not set, but the field must exist.
Ensure the class has @Collection() decorator and that the module is imported early enough.