CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-firebase

Firebase JavaScript library for web and Node.js applications providing authentication, databases, storage, analytics, messaging, and other backend services

Pending
Quality

Pending

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Pending

The risk profile of this skill

Overview
Eval results
Files

auth-web-extension.mddocs/

Firebase Authentication - Web Extension

Firebase Authentication for browser web extensions with specialized handling for extension environments and content security policies.

Capabilities

Web Extension Authentication Service

/**
 * Gets the Auth service instance optimized for web extensions
 * @param app - Firebase app instance, uses default if not provided
 * @returns Auth service instance configured for extension environment
 */
function getAuth(app?: FirebaseApp): Auth;

/**
 * Initialize Auth with web extension-specific dependencies
 * @param app - Firebase app instance
 * @param deps - Extension-specific dependencies
 * @returns Auth service instance
 */
function initializeAuth(app: FirebaseApp, deps: WebExtensionDependencies): Auth;

interface WebExtensionDependencies {
  /** Custom persistence for extension storage */
  persistence?: Persistence[];
  /** Extension-specific popup redirect resolver */
  popupRedirectResolver?: PopupRedirectResolver;
}

Extension-Safe Authentication

/**
 * Signs in using popup flow optimized for web extensions
 * @param auth - Auth service instance
 * @param provider - OAuth provider
 * @returns Promise resolving to user credential
 */
function signInWithPopup(auth: Auth, provider: AuthProvider): Promise<UserCredential>;

/**
 * Links additional provider to existing user account via popup
 * @param user - Current user
 * @param provider - Additional provider to link
 * @returns Promise resolving to user credential
 */
function linkWithPopup(user: User, provider: AuthProvider): Promise<UserCredential>;

Usage Examples:

import { initializeApp } from 'firebase/app';
import { getAuth, GoogleAuthProvider, signInWithPopup } from 'firebase/auth/web-extension';

const app = initializeApp(firebaseConfig);
const auth = getAuth(app);

// Sign in with popup (CSP-compliant for extensions)
const provider = new GoogleAuthProvider();
const result = await signInWithPopup(auth, provider);
console.log('Extension user:', result.user);

docs

ai.md

analytics.md

app-check.md

app.md

auth-cordova.md

auth-web-extension.md

auth.md

data-connect.md

database.md

firestore-lite.md

firestore.md

functions.md

index.md

installations.md

messaging-sw.md

messaging.md

performance.md

remote-config.md

storage.md

tile.json