Categorygithub.com/go-liquor/liquor-sdk/modules/firebase
modulepackage
1.0.0
Repository: https://github.com/go-liquor/liquor-sdk.git
Documentation: pkg.go.dev

# README

Firebase Module

Firebase integration module for Go applications.

Installation

liquor app enable firebase
# or
go get github.com/go-liquor/liquor-sdk/modules/firebase

Configuration

In your configuration file:

firebase:
  configFile: "path/to/firebase-credentials.json"

Add in your main.go:

package main

import (
	"github.com/go-liquor/framework/internal/adapters/server/http"
	"github.com/go-liquor/framework/internal/app/services"
	"github.com/go-liquor/liquor-sdk/app"
    "github.com/go-liquor/liquor-sdk/modules/firebase" // add this
)

func main() {
	app.NewApp(
        firebase.FirebaseModule, // add this
		http.Server,
		app.RegisterService(
			services.NewInitialService,
		),
	)
}

Usage

Authentication


type Service struct {
    client *firebase.Auth
}

func NewService(client *firebase.Auth) *Service {
    return &Service{client: client}
}

func (s *Service) Run(ctx context.Context, idToken string) {
   token, err := s.client.VerifyIDToken(ctx, idToken)
    if err != nil {
        // Handle error
    }
}

Firestore Database


type Service struct {
    client *firebase.FirestoreClient
}

func NewService(client *firebase.FirestoreClient) *Service {
    return &Service{client: client}
}

func (s *Service) Run(ctx context.Context) {
    // Use Firestore client
    doc := s.client.Collection("users").Doc("user1")
}

Features

  • Firebase App initialization
  • Authentication client
  • Firestore database client

# Functions

NewApp creates a new Firebase App instance using the provided configuration.
NewAuth creates a new Firebase Auth client from the Firebase App instance.
NewFirestore creates a new Firestore client from the Firebase App instance.

# Variables

No description provided by the author