New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@sudobility/auth_lib

Package Overview
Dependencies
Maintainers
1
Versions
50
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sudobility/auth_lib

Firebase authentication utilities with token refresh handling

latest
Source
npmnpm
Version
0.0.64
Version published
Maintainers
1
Created
Source

@sudobility/auth_lib

Firebase authentication library with configurable auth initialization, resilient network clients with automatic token refresh and logout handling, admin utilities, and React hooks for auth state management. Supports both web and React Native platforms.

Installation

bun add @sudobility/auth_lib

Peer Dependencies

bun add react firebase @sudobility/di @sudobility/types @tanstack/react-query
# For React Native, also:
bun add @react-native-firebase/app @react-native-firebase/auth

Usage

import {
  initializeFirebaseAuth,
  useFirebaseAuthNetworkClient,
  useSiteAdmin,
  getFirebaseErrorMessage,
} from '@sudobility/auth_lib';

// Initialize Firebase Auth (after Firebase app is initialized)
const { app, auth } = initializeFirebaseAuth();

// In a React component: get an auth-aware network client
const networkClient = useFirebaseAuthNetworkClient({
  onLogout: () => navigate('/login'),
});

// Check if user is a site admin
const { isSiteAdmin, isLoading } = useSiteAdmin({
  networkClient,
  baseUrl: 'https://api.example.com',
  userId: user.uid,
  token: idToken,
});

API

Firebase Initialization (config/)

ExportDescription
initializeFirebaseAuth()Initialize Firebase Auth (singleton)
getFirebaseApp()Get cached FirebaseApp instance
getFirebaseAuth()Get cached Auth instance
isFirebaseConfigured()Check if Firebase is initialized

Hooks (hooks/)

ExportDescription
useFirebaseAuthNetworkClient(options?)Auth-aware NetworkClient with 401 retry and 403 logout
createFirebaseAuthNetworkClient(platformNetwork?, options?)Non-hook factory version
useSiteAdmin(options)Check site admin status via TanStack Query

Network (network/)

ExportDescription
FirebaseAuthNetworkServiceAuth-aware network service (web and RN variants)

Utils (utils/)

ExportDescription
getFirebaseErrorMessage(code)Map Firebase error code to user-friendly message
formatFirebaseError(error)Extract and map error code in one call
isFirebaseAuthError(error)Check if error is a Firebase auth error

Admin (admin/)

ExportDescription
parseAdminEmails(csv)Parse comma-separated admin email string
isAdminEmail(email, adminSet)Check if email is in admin set
createAdminChecker(csv)Returns admin check function (deprecated)

Dual Entry Points

  • Web: import resolves to dist/index.js (Firebase JS SDK)
  • React Native: react-native condition resolves to dist/index.rn.js (@react-native-firebase)

Development

bun run build          # Compile TypeScript to dist/
bun run dev            # Watch mode build
bun test               # Run tests with Vitest
bun run typecheck      # Type-check without emitting
bun run lint           # Lint with ESLint
bun run format         # Format with Prettier

License

BUSL-1.1

FAQs

Package last updated on 24 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts