Adapter for AdminBro which allows to add your own Firebase resources
You will need AdminBro panel configured for your project. See AdminBro Repository for instructions
You have to initialize your Firebase app before connecting resources to AdminBro. That means you have to write something like:
// Your firebase config see https://firebase.google.com/docs/web/setup
export const firebaseConfig = {
// [...]
};
Firebase.initializeApp(firebaseConfig);
To connect adapter to your AdminBro instance all you need is to:
- Register this adapter into AdminBro instance
- Write resource with schema
- Pass resource to AdminBro config object
Check example
folder for full example application!
import * as firebase from "firebase";
import AdminBroExpress from 'admin-bro-expressjs';
import AdminBroFirebase from 'admin-bro-firebase';
import AdminBro from 'admin-bro';
const setupAdmin = async expressApp => {
AdminBro.registerAdapter(AdminBroFirebase);
const adminBro = new AdminBro({
branding: {
companyName: 'Firebase example',
},
resources: [
{
collection: firebase.firestore().collection('Users'),
schema: {
name: 'string',
isAdmin: 'boolean',
location: 'mixed',
attributes: {
type: 'mixed',
schema: {
birthdate: 'date',
height: 'number',
eyeColors: 'mixed',
},
},
},
},
],
});
const router = await AdminBroExpress.buildRouter(adminBro);
app.use(adminBro.options.rootPath, router);
};
- Jonasz Wiącek - Initial work - JonaszJestem
Described in Issues tab.
Feel free to contribute.
This project is licensed under the MIT License