Sign in with Apple for Node.js
An easy-to-use Node.js library for Signing in with Apple!
Now with support for fetching the name and email!
Check out the passport version of this library here:
Begin by installing the library:
npm install apple-auth
The configurations for Sign in with Apple are quite extensive so I've made an extensive SETUP.md file that you can read https://github.com/ananay/apple-auth/blob/master/SETUP.md
I've created an example of how to use this library with Express! Check it out here:
Example live on https://apple.ananay.dev
Initialize it using the following code:
const fs = require('fs'); const AppleAuth = require('apple-auth'); const config = fs.readFileSync("./config/config"); const auth = new AppleAuth(config, './config/AuthKey.p8');
auth.loginURL()- Creates the Login URL that your users will use to login to
auth.accessToken(grantCode)- Gets the access token from the grant code received
auth.refreshToken(refreshToken)- Gets the access token from a refresh token
invalid_grant when authorization code is generated by iOS App
Fix: If the authorizationCode was generated by your app, you should use your App ID as your clientId and not your service one. Discussion: https://github.com/ananay/apple-auth/issues/13
Questions / Contributing
Feel free to open issues and pull requests. If you would like to be one of the core creators of this library, please reach out to me at firstname.lastname@example.org or message me on twitter @ananayarora!
❤️ by Ananay Arora
This repository is NOT developed, endorsed by Apple Inc. or even related at all to Apple Inc. This library was implemented solely by the community's hardwork, and based on information that is public on Apple Developer's website. The library is a helper library for anyone trying to implement Apple's Sign in with Apple.