Sign in with Apple from Pub.Dev Package Manager for Flutter

Build and publish a Flutter-based app for the App Store and Google Play — updated for 2026 with the latest package versions and platform requirements.

Introducing plugins from pub.dev, and specifically how to add Sign in with Apple to your Flutter app today.

TL:DR – Now that we have authentication connected to Google Firebase and its Cloud Firestore database, let's extend our app to allow Sign in with Apple too. The sign_in_with_apple package has matured considerably since this series began and is now on version 8.0.0, with full support across Android, iOS, macOS, and Web.

pub.dev

Pub.Dev website banner and search screen

Sign in with Apple is not a package maintained by the Flutter team, but it lives on Flutter's pub.dev package repository, which Google manages to allow the community to share and discover packages. In 2026 pub.dev remains the definitive source for Flutter and Dart packages, and its quality signals have only improved over time.

Packages on pub.dev are scored so you can gauge quality at a glance. A few signals worth understanding:

  • Verified Publisher shield — confirms the publisher's identity has been verified by pub.dev. The sign_in_with_apple package is published by aboutyou.com, a verified publisher.
  • Likes — a crowd-sourced satisfaction indicator. sign_in_with_apple currently sits at over 2,100 likes, which is a strong signal of community confidence.
  • Flutter Favourite — the Flutter team's endorsement that a package meets a high bar for quality, maintenance, and broad applicability. More on this below.

You can read the rationale behind the scoring system in the Flutter blog post on Medium — Package Publishers, Ratings and Favorites — and there is more detail about the Flutter Favourite program in the official docs.

Sign in with Apple — a Flutter Favourite 

Pub.Dev sign_in_with_apple package page

The sign_in_with_apple package earned its Flutter Favourite status years ago and has retained it. The original endorsement from the Flutter team put it clearly:

Not only is it of high quality and broad applicability, but it fills an important gap in the Flutter feature set. Apple has announced that apps that use other third-party authentication, such as Google Sign In, must also enable Apple Sign In to be accepted in the App Store. Instead of the Flutter team at Google building its own plugin to fill this gap, we leaned on our community — and found the authors of sign_in_with_apple to be very responsive, bringing the plugin up to the required bar in record time.

That endorsement still holds. The package has been actively maintained, the publisher has been verified, and the 2,100+ likes on pub.dev reflect years of developers putting it into production successfully. If you are targeting the App Store with any form of third-party sign-in, Apple's requirement to also offer Sign in with Apple remains in force — this package is the standard way to satisfy it in Flutter.

What's changed in 2026

The most significant change since this series was first written is the version number: sign_in_with_apple is now at version 8.0.0, a major release that reflects how much the package has evolved. A few things worth noting if you are coming back to this after a gap:

  • Platform support has expanded. The package now officially supports Android, iOS, macOS, and Web — not just iOS. If your app targets multiple platforms, you get consistent Sign in with Apple behaviour across all of them.
  • The publisher has changed. The package is now maintained and published by aboutyou.com rather than the original individual authors. This is generally a positive sign for long-term maintenance, as a commercial organisation has an ongoing stake in keeping it working.
  • Major version bump means breaking changes. If you are upgrading from an older version (the original article referenced 2.5.1), review the changelog carefully before updating. A jump from 2.x to 8.x will almost certainly require code changes. Don't just bump the version number and hope for the best.
  • Apple Developer Program membership is required. This has always been the case, but it is worth stating plainly: you need a paid Apple Developer account to configure and test Sign in with Apple, both in Xcode and on a real device.

Enable Sign in with Apple capabilities in Xcode

Before touching any Dart code, you need to enable the Sign in with Apple capability for your app in Xcode. This step has not changed fundamentally, though the Xcode UI evolves with each release.

  1. Open your iOS project in Xcode:
    cd nameofyourproject/
    open ios/Runner.xcodeproj/
  2. In the project editor, select your target and open the Signing & Capabilities tab. Click the + Capability button and add Sign in with Apple. Confirm your Team ID, Bundle Identifier, and signing certificate are all correct before continuing. Xcode Signing and Capabilities pane showing Sign in with Apple

You can find the full Apple documentation for this step in the Xcode help pages.

Install the package

Follow the installation instructions on pub.dev. As of the current release, the steps are:

  1. Add the dependency to your pubspec.yaml:
    dependencies:
      sign_in_with_apple: ^8.0.0
  2. In Android Studio, choose Pub Get from the Flutter toolbar, or run the following in your terminal:
    flutter pub get
  3. Import the package where you need it:
    import 'package:sign_in_with_apple/sign_in_with_apple.dart';

Integrate Sign in with Apple in your code

Getting the basic Sign in with Apple dialog to appear on iOS is straightforward once the capability is enabled and the package is installed. However, handling the response properly — including error states, credential revocation, and the differences in behaviour across Android, macOS, and Web — requires a solid understanding of asynchronous programming in Dart.

The core of the integration relies on async and await, and getting comfortable with Dart's Future model will make the implementation much cleaner. Before going further with the Sign in with Apple flow, it is worth working through the Dart asynchronous programming: futures, async, await codelab if you haven't already — that's exactly where this series heads next.

With version 8.0.0 now supporting Web alongside the native platforms, there are also additional configuration steps for non-iOS targets. The pub.dev package page has platform-specific setup instructions that are worth reading in full before wiring up your authentication flow end to end.