๐ Magic OAuth Extension for Web Browsers
With the Magic JavaScript SDK OAuth 2 extension, you can plug into your favorite social login providers with one, easy-to-use API.
License ยท
Changelog ยท
Contributing Guide
๐ Documentation
See the developer documentation to learn how to get started with OAuth in Magic SDK.
๐ Installation
Integrating your app with OAuth will require our client-side NPM package and OAuth 2 extension:
npm install --save magic-sdk @magic-ext/oauth2
yarn add magic-sdk @magic-ext/oauth2
Alternatively, you can load via CDN with by adding a script tag to your appโs <head>
:
<script src="https://cdn.jsdelivr.net/npm/magic-sdk/dist/magic.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@magic-ext/oauth2/dist/extension.js"></script>
โก๏ธ Quick Start
Sign up or log in to the developer dashboard to receive API keys that will allow your application to interact with Magic's authentication APIs.
Then, you can start authenticating users with just two method calls!
From your login page:
import { Magic } from 'magic-sdk';
import { OAuthExtension } from '@magic-ext/oauth2';
const magic = new Magic('YOUR_API_KEY', {
extensions: [new OAuthExtension()]
});
await magic.oauth2.loginWithRedirect({
provider: 'google' | 'facebook' | 'github' | ...
});
From your OAuth callback page:
import { Magic } from 'magic-sdk';
import { OAuthExtension } from '@magic-ext/oauth2';
const magic = new Magic('YOUR_API_KEY', {
extensions: [new OAuthExtension()],
});
const res = await magic.oauth2.getRedirectResult();
res.magic.idToken;
res.oauth.userInfo;