📈 GH Trending Explorer 🎲 Surprise me

← all repos

google / GoogleSignIn-iOS

git clone https://github.com/google/GoogleSignIn-iOS.git 10.0.0 · 1mo ago 🔥 on GitHub Trending today

Enables iOS and macOS apps to sign in with Google.

+1
stars, 24h · #548
+2
stars, 7 days · #1,627
+8
stars, 30 days · #10,018
758
★ total · +0% this week
285
forks · 87 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageObjective-C
LicenseApache-2.0
Created2021-03-24 (5y ago)
Last pushtoday
Watchers24
OwnerOrganization

Seen on GitHub Trending

  • 2026-10-20 — #15 daily in objective-c · +1 ★
  • 2026-10-20 — #13 monthly in objective-c · +8 ★
  • 2026-10-20 — #10 weekly in objective-c · +2 ★

GitHub topics

Links

README excerpt
# Google Sign-In for iOS and macOS
Get users into your apps quickly and securely, using a registration system they
already use and trust—their Google account.
Visit our developer site
for integration instructions, documentation, support information, and terms of
service.
## Getting Started
Try either the Objective-C or Swift sample app.
For example, to demo the Objective-C sample project, you have two options:
1. Using CocoaPod's `install` method:
 [code] 
2. Using Swift Package Manager:
 [code] 
If you would like to see a Swift example, take a look at 
Samples/Swift/DaysUntilBirthday.
* Add Google Sign-In to your own app by following our
getting started guides.
* Take a look at the
API reference.
## Google Sign-In on macOS
Google Sign-In allows your users to sign-in to your native macOS app using their Google account
and default browser. When building for macOS, the `signInWithConfiguration:` and `addScopes:`
methods take a `presentingWindow:` parameter in place of `presentingViewController:`. Note that
in order for your macOS app to store credentials via the Keychain on macOS, you will need to add
`$(AppIdentifierPrefix)$(CFBundleIdentifier)` as the first item in its keychain access group.
### Mac Catalyst
Google Sign-In also supports iOS apps that are built for macOS via
Mac Catalyst. In order for your Mac Catalyst app
to store credentials via the Keychain on macOS, you will need to add
`$(AppIdentifierPrefix)$(CFBundleIdentifier)` as the first item in the keychain
access group.
## Using the Google Sign-In Button
There are several ways to add a 'Sign in with Google' button to your app, which
path you choose will depend on your UI framework and target platform.
### SwiftUI (iOS and macOS)
Creating a 'Sign in with Google' button in SwiftUI can be as simple as this:
 [code] 
This example takes advantage of the initializer's default argument for the
view model.
The default arguments for the view model will use the light scheme, the
standard button style, and the normal button state.
You can supply an instance of `GoogleSignInButtonViewModel`
with different values for these properties to customize the button.
This convenience initializer 
provides parameters that you can use to set these values as needed.
### UIKit (iOS)
If you are not using SwiftUI to build your user interfaces, you can either
create `GIDSignInButton` programmatically, or in a Xib/Storyboard. 
If you are writing programmatic UI code, it will look something like this:
`let button = GIDSignInButton(frame: CGRect( ))`
### AppKit (macOS)
Given that `GIDSignInButton` is implemented as a subclass of `UIControl`, it
will not be available on macOS. 
You can instead use the SwiftUI Google sign-in button.
Doing so will require that you wrap the SwiftUI button in a hosting view so
that it will be available for use in AppKit.
 [code] 
## A Note on iOS Keychain Access Groups
GSI uses your default (first listed) keychain access group. If you don't add a
custom keychain access group, the default