0.0.4 • Published 2 years ago

@mtbjorn/firestorm v0.0.4

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Firestorm

An interface for interacting with Google Firebase data storage.

Getting Started

  1. Get app config for your Firebase app from the Project Settings page
  2. Setup the active Firebase app

    import { setupActiveFirebaseApp } from '@mtbjorn/firestorm';
    setupActiveFirebaseApp({
    	appName: 'appName',
    	appConfig: {},
    	driverConfig: {}
    });
    • TODO: support for managing multiple Firebase apps
  3. Login to the active Firebase app

    import { getActiveFirebaseApp } from '@mtbjorn/firestorm';
    const { isUserLoggedIn, login } = getActiveFirebaseApp();
    
    const userIsLoggedIn = await isUserLoggedIn('email');
    if (!userIsLoggedIn) await login('email', 'password');
  4. Logout of the active Firebase app

    import { getActiveFirebaseApp } from '@mtbjorn/firestorm';
    const { logout } = getActiveFirebaseApp();
    await logout();
  5. Respond to changes in authentication status of active Firebase app

    import { getActiveFirebaseApp } from '@mtbjorn/firestorm';
    const { addAuthStateListener } = getActiveFirebaseApp();
    
    const removeAuthStateListener = await addAuthStateListener((auth) => {
        console.log(`Current user: ${auth.email}`)
        removeAuthStateListener();
    });
  6. Upload a file to storage

    import { uploadFile } from '@mtbjorn/firestorm';
    const url = await uploadFile('fileName', file, 'imagesDirectory');