A Firestore Client for the awesome react-admin framework. This library is a modified version of aymendhaya/ra-data-firebase-client
Pull requests are welcome! 🤝
- Supports all DataProvider request types (
GET_LIST,GET_MANY_REFERENCEetc) - Sorting, filtering, pagination
- AuthProvider with email/password authentication
- Login enabled to users with admin rights only (how to set it up)
- Attaching files (also images) in Base64 to Firestore documents (so react-admin ImageInput & FileInput work)
Clone the repository & run
npm install npm run init npm run demo npm install ra-data-firestore-clientCheck example implementation.
Only the Firebase users with admin flag are able to authenticate on the Login screen.
To elevate users rights, add a boolean field isAdmin = true for a user in a Firestore collection /users/, like below:
"users": {
"<USER_ID>": {
"isAdmin": true
}
}The default collection & field name can be changed by adding authConfig object to AuthProvider constructor:
const authConfig = {
userProfilePath: '/users/',
userAdminProp: 'isAdmin'
};- Filtering list by a text query works for exact values only
- Realtime updates are not implemented yet (a draft PR is in progress)
- No support for Firebase Storage upload
- Sorting, filtering and pagination are done in memory after fetching all documents from collection (a draft PR is in progress)