This project is no longer maintained and does not support React Admin v3. Please use the alternative: https://github.com/benwinding/react-admin-firebase
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_REFERENCE
etc) - 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-client
Check 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)