All Projects β†’ convoo β†’ Login Fire

convoo / Login Fire

Licence: mit
An element that allows simple configuration of multiple provider login for firebase

Projects that are alternatives of or similar to Login Fire

React Gatsby Firebase Authentication
🐣πŸ”₯Starter Project / Boilerplate for Authentication with Firebase and plain React in Gatsby.js
Stars: ✭ 356 (+513.79%)
Mutual labels:  firebase, authentication
Nextjs Firebase Authentication
Next.js + Firebase Starter
Stars: ✭ 502 (+765.52%)
Mutual labels:  firebase, authentication
Vaadin Core
An evolving set of free, open source web components for building mobile and desktop web applications in modern browsers.
Stars: ✭ 382 (+558.62%)
Mutual labels:  webcomponents, polymer
Apollo Elements
πŸš€πŸŒ› Use the Launch Platform πŸ‘©β€πŸš€πŸ‘¨β€πŸš€
Stars: ✭ 278 (+379.31%)
Mutual labels:  webcomponents, polymer
React Firebase Authentication
πŸ”₯ Boilerplate Project for Authentication with Firebase in React.
Stars: ✭ 863 (+1387.93%)
Mutual labels:  firebase, authentication
Google Chart
Google Charts API web components
Stars: ✭ 284 (+389.66%)
Mutual labels:  webcomponents, polymer
Vaadin
An evolving set of open source web components for building mobile and desktop web applications in modern browsers.
Stars: ✭ 424 (+631.03%)
Mutual labels:  webcomponents, polymer
polymerx-cli
⚑ Unlock the power of Polymer 3, Web Components and modern web tools.
Stars: ✭ 30 (-48.28%)
Mutual labels:  polymer, webcomponents
Hoverboard
Conference website template
Stars: ✭ 935 (+1512.07%)
Mutual labels:  firebase, polymer
Firebase Admin Go
Firebase Admin Go SDK
Stars: ✭ 651 (+1022.41%)
Mutual labels:  firebase, authentication
Material Kit React
React Dashboard made with Material UI’s components. Our pro template contains features like TypeScript version, authentication system with Firebase and Auth0 plus many other
Stars: ✭ 3,465 (+5874.14%)
Mutual labels:  firebase, authentication
Nativescript Plugin Firebase
πŸ”₯ NativeScript plugin for Firebase
Stars: ✭ 990 (+1606.9%)
Mutual labels:  firebase, authentication
React Redux Firebase Authentication
πŸ”₯Boilerplate Project for Authentication with Firebase in React and Redux
Stars: ✭ 265 (+356.9%)
Mutual labels:  firebase, authentication
Firebase Admin Java
Firebase Admin Java SDK
Stars: ✭ 345 (+494.83%)
Mutual labels:  firebase, authentication
vaadin-text-field
The themable Web Component providing input controls. Part of the Vaadin components.
Stars: ✭ 29 (-50%)
Mutual labels:  polymer, webcomponents
Awesome Polymer
A collection of awesome Polymer resources.
Stars: ✭ 384 (+562.07%)
Mutual labels:  webcomponents, polymer
dom-repeat-n
[Polymer 1.x] A template element that repeat n times its content.
Stars: ✭ 20 (-65.52%)
Mutual labels:  polymer, webcomponents
vaadin-icons
Vaadin Icons is a collection of 600+ unique icons designed for web applications
Stars: ✭ 59 (+1.72%)
Mutual labels:  polymer, webcomponents
Firebase Admin Python
Firebase Admin Python SDK
Stars: ✭ 591 (+918.97%)
Mutual labels:  firebase, authentication
Vaadin Form Layout
The Web Component providing configurable responsive layout for form elements. Part of the Vaadin components.
Stars: ✭ 15 (-74.14%)
Mutual labels:  webcomponents, polymer

Login-Fire

login-fire

Simple way to add authentication to your app using Firebase Auth.

Build Status Web Components Status Gitter Commitizen friendly


Overview & Demo

The following elements are available:

  • <login-fire-button> for single provider authentication
  • <login-fire-social> for multiple provider authentication
  • <login-fire-form> for email and password authentication
  • <login-fire> for all of the above.

The goal of the <login-fire> elements is to provide a simple to setup, elegant UI for authentication using Firebase Auth.

Our demo is available on webcomponents.org.

Note: login-fire is not associated with Firebase. This collection of components is based on polymerfire.

Install

bower install login-fire --save

<login-fire>

Add authentication with email and password as well as federated identity providers (Google, Facebook, Twitter, GitHub, Anonymous) to your app.

<link rel="import" href="/bower_components/login-fire/login-fire.html">
<firebase-app
  name="login"
  api-key="AIzaSyAhoCXxkY-ffNwA_7L7HIwBVpASYj1btNE"
  auth-domain="convoo-login-demo.firebaseapp.com"
  database-url="https://convoo-login-demo.firebaseio.com">
</firebase-app>

<login-fire
  app-name="login"
  providers="google, facebook, twitter, github, anonymous" 
  user="{{user}}"
  signed-in="{{signedIn}}">
</login-fire>

<login-fire-social>

Add multiple federated identity providers authentication to your app with Firebase Auth API.

<link rel="import" href="/bower_components/login-fire/login-fire-social.html">
<firebase-app
  name="social"
  api-key="AIzaSyAhoCXxkY-ffNwA_7L7HIwBVpASYj1btNE"
  auth-domain="convoo-login-demo.firebaseapp.com"
  database-url="https://convoo-login-demo.firebaseio.com">
</firebase-app>

<login-fire-social
  app-name="social"
  providers="google, facebook, twitter, github, anonymous" 
  user="{{user}}"
  signed-in="{{signedIn}}">
</login-fire-social>

<login-fire-form>

Add email-password authentication to your app with Firebase Auth API.

<link rel="import" href="/bower_components/login-fire/login-fire-form.html">
<firebase-app
  name="email"
  api-key="AIzaSyAhoCXxkY-ffNwA_7L7HIwBVpASYj1btNE"
  auth-domain="convoo-login-demo.firebaseapp.com"
  database-url="https://convoo-login-demo.firebaseio.com">
</firebase-app>

<login-fire-form
  app-name="email"
  user="{{user}}"
  signed-in="{{signedIn}}">
</login-fire-form>

<login-fire-button>

A button for a single federated identity provider (Google, Facebook, Twitter, GitHub, Anonymous) that allows users to sign-in to and sign-out from your app using Firebase Auth API.

<link rel="import" href="/bower_components/login-fire/login-fire-button.html">
<firebase-app
  name="button"
  api-key="AIzaSyAhoCXxkY-ffNwA_7L7HIwBVpASYj1btNE"
  auth-domain="convoo-login-demo.firebaseapp.com"
  database-url="https://convoo-login-demo.firebaseio.com">
</firebase-app>

<login-fire-button app-name="button" provider="google" user="{{user}}"></login-fire-button>
<login-fire-button app-name="button" provider="facebook" user="{{user}}"></login-fire-button>
<login-fire-button app-name="button" user="{{user}}"></login-fire-button>

Signing Out

To sign out, access a login-fire element and call its signOut function.

Example:

<a on-click="_signOut">Sign Out</a>
_signOut: function(e){
  this.$$('login-fire').signOut();
  // or
  // this.$$('login-fire-button').signOut();
  // or
  // this.$$('login-fire-social').signOut();
  // or
  // this.$$('login-fire-form').signOut();
}

Debugging

To make it easier to debug, we've added the debug attribute. Set the "debug" attribute of the element to true to see more details about its variables' values.

Example:

<login-fire-form app-name="email" debug></login-fire-form>

Styling

Style the buttons with CSS as you would a normal DOM element. A few custom properties and mixins are available. The detailed lists are on each element's documentation page.

Contributing

Install Development Dependencies

First, make sure you have NPM installed (locally or globally).

npm install && polymer install

Viewing Your Application

polymer serve

Building Your Application

polymer build

This will create a build/ folder with bundled/ and unbundled/ sub-folders containing a bundled (Vulcanized) and unbundled builds, both run through HTML, CSS, and JS optimizers.

You can serve the built versions by giving polymer serve a folder to serve from:

polymer serve build/bundled

Running Tests

polymer test

Your application is already set up to be tested via web-component-tester. Run polymer test to run your application's test suite locally.

Workflow

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git cz (please follow this commit guide)
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request. :D

License

MIT

Credits

Logo: Fingerprint by Gregor Cresnar from the Noun Project

Browser Testing

BrowserStack

Thanks to the support of BrowserStack we can do real cross browser testing on multiple desktop and mobile platforms.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].