firestore-size
v2.0.7
Published
Calculates the approximate size of Firestore document.
Downloads
23,708
Maintainers
Readme
Inspired by [email protected]:miktam/sizeof.git
firestore-size
This tiny package calculates the approximate size (in bytes) of a Firestore document.
Installation
npm i firestore-size
Usage
import sizeof from 'firestore-size'
const snapshot = db
.collection("data")
.doc(id)
.get();
const data = snapshot.data();
const bytes = sizeof(data);
console.log( bytes > 1000 ? "I'm in awe of the size of this lad!": "Ew..")
console.log( typeof bytes === 'number'); //true
How it works
- Array - The sum of the sizes of its values
- Boolean - 1 byte
- Bytes - Byte length
- Date and time - 8 bytes
- Floating-point number - 8 bytes
- Geographical point - 16 bytes
- Integer - 8 bytes
- Map - The size of the map, calculated the same way as document size
- Null - 1 byte
- Reference - The document name size
- Text string - Number of UTF-8 encoded bytes + 1
More on how the size is calculated in firestore docs - documentation
Important notice
Does not take into account the name of a document.
For a document in the subcollection users/jeff/tasks
with a string document ID of my_task_id
, the document name size is 6 + 5 + 6 + 11 + 16 = 44 bytes. More about it in the docs.
Does not take into account indexing. Indexes can be disabled - docs - to free up more space.
Caught a Bug?
Fork this repository to your own GitHub account and then clone it to your local device
As always, you can run the tests using: npm test