{"id":18714,"library":"react-native-firebaseui-auth","title":"React Native FirebaseUI Auth","description":"A React Native library that wraps FirebaseUI Authentication, providing a drop-in UI for sign-in methods (email, Google, Facebook, anonymous) on iOS and Android. Version 2.0.0 updates Android dependencies and is compatible with React Native >=0.59.0. Ships TypeScript types. Key differentiators: uses native FirebaseUI SDKs for consistent look-and-feel, supports auth state event listeners, and allows automatic upgrade of anonymous users.","status":"active","version":"2.0.0","language":"javascript","source_language":"en","source_url":"ssh://git@github.com/oijusti/react-native-firebaseui-auth","tags":["javascript","android","ios","react-native","firebase","firebase auth","firebaseUI","firebaseUI auth","react-native-firebase","typescript"],"install":[{"cmd":"npm install react-native-firebaseui-auth","lang":"bash","label":"npm"},{"cmd":"yarn add react-native-firebaseui-auth","lang":"bash","label":"yarn"},{"cmd":"pnpm add react-native-firebaseui-auth","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required for React Native bridge","package":"react-native","optional":false}],"imports":[{"note":"Default export is ESM-only. CommonJS require is not supported.","wrong":"const Auth = require('react-native-firebaseui-auth')","symbol":"Auth","correct":"import Auth from 'react-native-firebaseui-auth'"},{"note":"Named export, not default.","wrong":"import AuthEventEmitter from 'react-native-firebaseui-auth'","symbol":"AuthEventEmitter","correct":"import { AuthEventEmitter } from 'react-native-firebaseui-auth'"},{"note":"ESM named import is required. CJS destructure is unsupported.","wrong":"const { AuthEvents } = require('react-native-firebaseui-auth')","symbol":"AuthEvents","correct":"import { AuthEvents } from 'react-native-firebaseui-auth'"}],"quickstart":{"code":"import Auth, { AuthEventEmitter, AuthEvents } from 'react-native-firebaseui-auth';\n\n// Listen for auth state changes\ncomponentDidMount() {\n  this.listener = AuthEventEmitter.addListener(\n    AuthEvents.AUTH_STATE_CHANGED,\n    (event) => {\n      console.log('User:', event.user);\n    }\n  );\n}\n\ncomponentWillUnmount() {\n  this.listener.remove();\n}\n\n// Configure sign-in providers\nconst config = {\n  providers: ['email', 'google', 'facebook', 'anonymous'],\n};\n\n// Start sign-in flow\nAuth.signIn(config)\n  .then((result) => console.log('Signed in:', result.user))\n  .catch((error) => console.error('Auth error:', error));","lang":"typescript","description":"Shows default import, named event emitter, provider config, and sign-in call."},"warnings":[{"fix":"Ensure your project uses compatible Firebase and AndroidX versions. Update android/build.gradle as needed.","message":"Version 2.0.0 updates Android dependencies, may conflict with existing Firebase/AndroidX setup.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Replace calls to `Auth.delete()` with `Auth.deleteUser()`.","message":"v1.3.46 renamed `delete` to `deleteUser`. The old `delete` method is removed.","severity":"deprecated","affected_versions":">=1.3.46"},{"fix":"Use ES import syntax: `import Auth from 'react-native-firebaseui-auth'`.","message":"Package uses ESM only. Using require() or CJS syntax will fail at runtime.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Import with `import { AuthEventEmitter, AuthEvents } from 'react-native-firebaseui-auth'`.","message":"AuthEventEmitter and AuthEvents are named exports, not part of default export.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"For RN >=0.60, simply install the package; no react-native link required.","message":"React Native >=0.60 uses autolinking, no manual linking needed. Linking steps for <=0.59 only.","severity":"gotcha","affected_versions":">=0.60"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run `npm install react-native-firebaseui-auth` or `yarn add react-native-firebaseui-auth`.","cause":"Package not installed or import path incorrect.","error":"Cannot find module 'react-native-firebaseui-auth'"},{"fix":"Use `import Auth from 'react-native-firebaseui-auth'` instead of `import { Auth } from ...`.","cause":"Incorrect import – likely used { Auth } named import instead of default.","error":"TypeError: Auth.signIn is not a function"},{"fix":"Use `import { AuthEventEmitter } from 'react-native-firebaseui-auth'`.","cause":"AuthEventEmitter imported incorrectly as default.","error":"undefined is not an object (evaluating 'AuthEventEmitter.addListener')"},{"fix":"Ensure import: `import { AuthEvents } from 'react-native-firebaseui-auth'`.","cause":"Importing AuthEvents as default or wrong path.","error":"Module 'react-native-firebaseui-auth' has no exported member 'AuthEvents'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}