Skip to content

Conversation

@chriscanin
Copy link

@chriscanin chriscanin commented Oct 22, 2025

🔎 Previews:

https://clerk.com/docs/pr/chris-mobile-279-expo-sign-in-with-apple/expo/getting-started/quickstart
https://clerk.com/docs/pr/chris-mobile-279-expo-sign-in-with-apple/expo/guides/configure/auth-strategies/sign-in-with-apple
https://clerk.com/docs/pr/chris-mobile-279-expo-sign-in-with-apple/reference/expo/use-apple-sign-in

What does this solve?

This documentation helps to better explain the process of adding a native apple sign in / sign up button to your expo application in iOS.

What changed?

I have added a created an apple sign in installation guide, and added a hook details page. I have also added these items to the side menu as they are placed in the iOS section, so that the expo documentation matches as closely as possible.

Checklist

  • I have clicked on "Files changed" and performed a thorough self-review
  • All existing checks pass

@chriscanin chriscanin requested a review from a team as a code owner October 22, 2025 16:18
@vercel
Copy link

vercel bot commented Oct 22, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
clerk-docs Ready Ready Preview Oct 27, 2025 9:18pm

@mikepitre
Copy link
Contributor

Overall this looks great @chriscanin! I left just a few comments and I'll leave the technical review to the js team and the content review to the docs team 😃 Nice first docs PR! 🚀

@chriscanin
Copy link
Author

Overall this looks great @chriscanin! I left just a few comments and I'll leave the technical review to the js team and the content review to the docs team 😃 Nice first docs PR! 🚀

Hey @mikepitre , did not see any comments here on this repo. Maybe they were not published if it was a review? Let me know!


### Prerequisites

Before using this hook, ensure you have:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need to mention adding to the native applications page here?

@mikepitre
Copy link
Contributor

Overall this looks great @chriscanin! I left just a few comments and I'll leave the technical review to the js team and the content review to the docs team 😃 Nice first docs PR! 🚀

Hey @mikepitre , did not see any comments here on this repo. Maybe they were not published if it was a review? Let me know!

you are correct, I never hit submit. They should be there now 🙈

@SarahSoutoul
Copy link
Contributor

SarahSoutoul commented Oct 22, 2025

@chriscanin @mikepitre @alexisintech - have just submitted a docs review. Have a look, and let me know thoughts.

I will also leave some comments about certain things I'm hesitating about before I can approve, and want Alexis to have a second look as well. This is a great addition Chris, thank you 🚀

Comment on lines +9 to +10
> [!NOTE]
> Apple Sign-In works on both iOS Simulators and physical devices. However, physical devices provide full functionality including biometric authentication (Face ID/Touch ID), while simulators have limited support. Always test on a physical device before releasing to production.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moved this at the top, as it used to be part of the last step, but I thought it looked out of place. Happy to hear other perspectives tho.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, is this callout needed in the original Sign in with Apple guide for iOS?


## Create a native build

Create a native build with EAS Build or a local prebuild, since Apple Authentication is not supported in Expo Go.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is info that was duplicated as a callout at the start of the guide, and felt it made more sense here, and instead move up the other callout around physical devices. Again, happy to hear other perspectives.


The `useAppleSignIn()` hook provides native Sign in with Apple functionality for iOS devices. It automatically handles the ID token exchange with Clerk's Backend and manages the transfer flow between sign-in and sign-up.

### Prerequisites
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm unsure about this section. While I think it is useful, maybe, it'll be more straightforward and cleaner to have this in a <TutorialHero />, and just link to the Sign in with Apple for Expo guide. Keen to hear your thoughts on this @alexisintech!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with this

Comment on lines 226 to 230
## Error handling

The `useAppleSignIn()` hook may throw errors in the following scenarios:

- **User cancellation**: The user cancels the sign-in flow, resulting in an error with code `ERR_REQUEST_CANCELED`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we perhaps want this in the guide itself as well?

@SarahSoutoul SarahSoutoul requested review from a team and alexisintech October 24, 2025 16:04
sdk: expo
---

This guide will teach you how to add native Sign in with Apple to your Clerk Expo apps.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This guide will teach you how to add native Sign in with Apple to your Clerk Expo apps.
This guide will teach you how to add native [Sign in with Apple](https://support.apple.com/en-us/102609) to your Clerk Expo apps.

> [!NOTE]
> This hook is only available on iOS devices and requires a native build. It will not work with Expo Go.

The `useAppleSignIn()` hook provides native Sign in with Apple functionality for iOS devices. It automatically handles the ID token exchange with Clerk's Backend and manages the transfer flow between sign-in and sign-up.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The `useAppleSignIn()` hook provides native Sign in with Apple functionality for iOS devices. It automatically handles the ID token exchange with Clerk's Backend and manages the transfer flow between sign-in and sign-up.
The `useAppleSignIn()` hook provides native [Sign in with Apple](https://support.apple.com/en-us/102609) functionality for iOS devices. It automatically handles the ID token exchange with Clerk's Backend and manages the transfer flow between sign-in and sign-up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants