Flutter Auth Buttons

Flutter widget library containing buttons for authenticating with popular social networks.

These buttons do not contain authentication logic. They are designed to be used with authentication packages, such as firebase_auth. Use the onPressed attribute to capture the button press and call your authentication logic within that.

GoogleSignInButton(onPressed: () {
  // call authentication logic
});

Supported buttons

Screenshots of the supported buttons are shown below.

Google

Google suggests two default button styles on it's branding page.

Light button:

Google light button screenshot

Dark button:

Google dark button screenshot

Facebook

Facebook has fewer guidelines for designing their buttons (see here). This button was designed to match the example given in their documentation.

Facebook button screenshot

Twitter

Like Facebook, Twitter doesn't prescribe a precise button (see here). This button was designed to match the colours and style used in their example images.

Twitter button screenshot

Usage

Add flutter_auth_buttons to your pubspec.yaml, then import the Dart file:

import 'package:flutter_auth_buttons/flutter_auth_buttons.dart';

See the documentation for API details.

Libraries

flutter_auth_buttons

Dart

dart:ui
Built-in types and core primitives for a Flutter application. [...]

Core

dart:async
Support for asynchronous programming, with classes such as Future and Stream. [...]
dart:collection
Classes and utilities that supplement the collection support in dart:core. [...]
dart:convert
Encoders and decoders for converting between different data representations, including JSON and UTF-8. [...]
dart:core
Built-in types, collections, and other core functionality for every Dart program. [...]
dart:developer
Interact with developer tools such as the debugger and inspector. [...]
dart:math
Mathematical constants and functions, plus a random number generator. [...]
dart:typed_data
Lists that efficiently handle fixed sized data (for example, unsigned 8 byte integers) and SIMD numeric types. [...]

VM

dart:io
File, socket, HTTP, and other I/O support for non-web applications. [...]
dart:isolate
Concurrent programming using isolates: independent workers that are similar to threads but don't share memory, communicating only via messages. [...]