100 results found
-
Firestore : Throw error access data with offline cache without enable persistence
When retrieving documents from Firebase's Firestore on the web, if you attempt to read the value from the cache, it will return an empty result.
This seems to be an issue because Firestore's database does not use offline data when accessed from the web by default.
To make developers aware of this, should throw some error if Firestore's database is set to not use offline data, and attempting to read the cache value.
3 votes -
Duplicate document in collection in Firestore
Duplicate document in collection in Firestore
3 votes -
Expose createTime & updateTime in scheduled Firebase LevelDB exports
I am using this procedure for regular backups: https://firebase.google.com/docs/firestore/solutions/schedule-export
and some tooling to locally analyze data in the resulting (downloaded) LevelDB backups.The Admin SDK exposes (internally, but still) createTime, readTime and updateTime properties on snapshots. I don’t see these properties included in the database exports; which makes them less complete as backups, and less useful for data analysis.
1 vote -
34 votes
-
DocumentReference join query
Please add a join query to Cloud Firestore. It seems that using DocumentReference for the join would be appropriate.
29 votes -
Allow listening to firestore document/query changes without getting a snapshot automatially
The default behavior when listening to a document/query is that you will always get an initial invoke of your listener.
Allowing to change this behavior would give more freedom, in the case that the developer wishes to fetch the initial values asynchronously and then have the changes delivered via the callback.2 votes -
provide feedback on database restore progress
During a restore, there's no way to know how long it will take or where the progress is. It would be great to have some visibility into the process.
I initiated a restore from a backup created by the automated schedules
gcloud alpha firestore databases restore \
--source-backup=projects/PROJECTID/locations/LOCATION/backups/BACKUPID \
--destination-database='DATABASE_ID'I have seen this take between 20 minutes to over a day.
The documentation for this feature is here:
1 vote -
32 votes
-
Join collections in real-time (similar to lookup in mongodb)
The ability to join collections in real-time really allows developers to build complex use cases. Currently, I am having to denormalize data so excessively that the solution doesn't seem to scale. Having to implement workaround after workaround to circumvent the limitations.
An aggregate lookup function similar to that of mongodb would really be a life save. We are ok to compromise on the extra reads, and some performance if it means to bring us data consistency.
Really having this feature would stop people looking into RDBMS based alternative such as Supabase.
7 votes -
structure and organization of Firestore collections: documentation
Normally documentation about collections is done in a 3rd party tool like notion, jira, google docs (or notepad for the brave ones).
After a while this easily becomes inconsistent due to ongoing changes throughout the project development. The same way as we document code directly in the code file, it'd be great to document collections directly in the firestore console.
For this, something simple like a text input would suffice (ideally with some minimal markdown, but not mandatory). If developers need to add more detailed info or explanations (and make use of charts, designs, videos, whatever) they could simply add…
1 vote -
custom gpt to firestore
I wanted to create my own GPT using OpenAI's new GPT builder which has "Functions" in it, and I wanted it to be able to use Firestore API to perform CRUD operations, but unfortunately I struggled to find documentation on how to do that.
2 votes -
The ability too see when an index was last accessed
When a project grows to a certain size, you'll likely have many indexes with associated queries.
However, queries change, or get removed, and currently there's no way to see if an index could be safely removed, after a query is; which would be a great feature.
10 votes -
Encrypted Collections in Firestore
Ability to mark certain collections to be Encrypted so it's not readable even in the firebase console.
There are some application types that require this sort of behaviour to increase security.
Say you are building a messaging app, you would not want the messages between your users to be seen on the console.
5 votes -
Allow field selections in client sdk's
Let's say I have an orders collection where each document represents a customer order.
I would like to be able to fetch and listen to only the names and dates of all orders and not get the whole document.
This would speed up a lot queries where not all fields are required and save bandwidth for users.
Since selection is already present in some server side SDK's I wonder if this could be enabled with a somewhat manageable effort.
10 votes -
23 votes
-
Improve performance & speed of client side write
I've used both Firestore and MongoDB's Realm Device Sync. While Firestore works great in terms of scaling, the performance and speed for client side write is far behind realm, especially when client side is doing some batch writes.
Realm uses techniques like data compression and delta sync to reduce the data size when uploading (https://www.mongodb.com/docs/atlas/app-services/sync/details/protocol/), I'd like to see Firestore doing the same and improve the performance of client side batch write.
Also, what I've noticed is that Firestore's client side write performance degrades a lot after some time being offline, this isn't great for apps that would…
9 votes -
Support offline capabilities for mobile using React Native
I can see offline capabilities for mobile using Kotlin, Java, Swift and Objective-C. I am requesting offline support for React Native application.
1 vote -
FieldValue.min() and FieldValue.max()
Currently the Firestore API supports FieldValue.increment() to atomically increment or decrement a numeric value. I propose to add:
FieldValue.max(value): if the provided value is greater than the existing value on the server, then the field on the server takes this value. If it is less than the existing value, then the existing value remains.
FieldValue.min(value): (the opposite) if the provided value is less than the existing value on the server, then the field on the server takes this value. If it is greater than the existing value, then the existing value remains.
These operators should work on numeric fields AND…
17 votes -
Add Creator User UID to the Collection Record Metadata
Will allow further security validation and early detection of security checks failures.
To give an example of why this is important,
I use a Firebase Collection as an API alternative, I create a task record that triggers a cloud function, it allows me to manage my resources effectively and provide partial updates, way more flexible than traditional REST, however with API I use bearer tokens to verify that the identity of the person creating the record and deciding if they are allowed or 401, without UID in record metadata I have to send the plain UID as a field in…2 votes -
Firestore hosting in South Africa
Make Firestore and Firebase hosting available on the new Johannesburg Cloud Region; this will greatly assist developers in launching apps within the continent and also assist with local data protection regulations.
2 votes
- Don't see your idea?