ra-auth-firebase

1.0.2 • Public • Published

ra-auth-firebase

package version package downloads standard-readme compliant package license make a pull request

Firebase auth provider for React Admin

Table of Contents

About

A Firebase auth provider for react-admin. Based on aor-firebase-client, modified and maintained to own preferences.

Install

This project uses node and npm. Ensure that firebase and react-admin is installed.

$ npm install ra-auth-firebase
# OR 
$ yarn add ra-auth-firebase

Usage

import React, { Component } from 'react'
import { Admin, Resource } from 'react-admin'
import firebase from 'firebase'
 
import Login from './login'
import Dashboard from './dashboard'
 
import Store from '@material-ui/icons/Store'
import { AssetsCreate, AssetsEdit, AssetsList } from './assets'
 
import { FirebaseAuthProvider } from 'ra-auth-firebase'
 
const firebaseConfig =
    {
      // Firebase config used to create additional app to create users (HACK)
      apiKey: '########################################',
      authDomain: '########################################',
      databaseURL: '########################################',
      projectId: '########################################',
      storageBucket: '########################################'
    }
 
const providerConfig = {
  admin: {
    path: '/people/',
    validate: (user) => user.isAdmin && user.isEmployee // Validate that user may sign in (default () => true)
  },
  keys: {
    // Keys for local storage
    permissions: 'user',
    token: 'firebase'
  }
}
 
// Ensure firebase is initialized first
firebase.initializeApp(firebaseConfig)
 
class App extends Component {
  render () {
    return <Admin
      title='Demo'
      loginPage={Login}
      dashboard={Dashboard}
      authProvider={FirebaseAuthProvider(providerConfig)}
    >
      <Resource
        icon={Store}
        options={{ label: 'Assets' }}
        name='assets'
        list={AssetsList}
        edit={AssetsEdit}
        create={AssetsCreate}
      />
    </Admin>
  }
}
 
export default App
 

See

Contribute

  1. Fork it and create your feature branch: git checkout -b my-new-feature
  2. Commit your changes: git commit -am 'Add some feature'
  3. Push to the branch: git push origin my-new-feature
  4. Submit a pull request

License

MIT

Dependencies (1)

Dev Dependencies (2)

Package Sidebar

Install

npm i ra-auth-firebase

Weekly Downloads

126

Version

1.0.2

License

MIT

Unpacked Size

56.2 kB

Total Files

15

Last publish

Collaborators

  • tiaanduplessis