Learn R Programming

⚠️There's a newer version (1.0.2) of this package.Take me there.

Authenticate Shiny users with Google Firebase

Website | Demo | Reference

CAUTION

I sincerely apologise but a grave error on my part led to a grave potential security issue, see #11.

This is fixed in version 0.2.0: update as soon as possible. It is available on CRAN.

Note: You may need to refresh the cache, visit your app and CTRL/CMD + SHIFT + R

Authentication Methods

Currently the following methods from Google Firebase are available in the package:

  • Email & Password
  • Email Link
  • Google
  • Github
  • Facebook
  • Twitter
  • Microsoft
  • Yahoo!

Example

An application that provides authentication could look like this.

library(shiny)
library(firebase)

ui <- fluidPage(
  useFirebase(), # import dependencies,
  useFirebaseUI()
)

server <- function(input, output){
  f <- FirebaseUI$
    new()$ # instantiate
    set_providers( # define providers
      email = TRUE, 
      google = TRUE
    )$
    launch() # launch
}

shinyApp(ui, server)

Install

Install the stable version from CRAN:

install.packages("firebase")

Install the development from Github using remotes:

# install.packages("remotes")
remotes::install_github("JohnCoene/firebase")

Related

Below are similar projects:

Code of Conduct

Please note that the firebase project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Copy Link

Version

Install

install.packages('firebase')

Monthly Downloads

275

Version

0.2.1

License

AGPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

John Coene

Last Published

October 24th, 2021

Functions in firebase (0.2.1)

FirebaseSocial

Social
FirebaseEmailLink

Email Link
check_providers

Check Providers
config

Config
Firebase

Firebase
check_urls

Check URLs
FirebaseUI

Prebuilt UI
FirebaseEmailPassword

Email & Password
FirebaseOauthProviders

OAuth Providers
create_unique_id

ID
recaptcha

Recaptcha
reqSignin

Requires Signin
dependencies

Dependencies
read_config

Config Internal
encryption

Encryption
pkg_file

Get Path
reqSignout

Requires Signout