Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@magic-ext/connect

magiclabs13.8kMITdeprecated9.1.0TypeScript support: included

Connect extension has been merged to magic-sdk, please download the latest magic-sdk to unlock more features

Magic SDK Connect Extension for Web environments.

readme

✨ Magic JavaScript SDK

<MagicLabs>

The Magic JavaScript SDK empowers developers to provide frictionless web3 onboarding to their end-users while preserving their security and privacy using non-custodial wallets.

License · Changelog · Contributing Guide

📖 Documentation

  • See the developer documentation to learn how you can master the Magic SDK in a matter of minutes.
  • See the @magic-sdk/react-native-bare README for Bare React Native package specific information.
  • See the @magic-sdk/react-native-expo README for Expo React Native package specific information.

⚡️ Quick Start

Installation

Integrating your app with Magic will require our client-side NPM package:

# Via NPM:
npm install --save magic-sdk # If you're targeting web browsers
npm install --save @magic-sdk/react-native-bare # If you're targeting Bare React Native
npm install --save @magic-sdk/react-native-expo # If you're targeting Expo React Native

# Via Yarn:
yarn add magic-sdk # If you're targeting web browsers
yarn add @magic-sdk/react-native-bare # If you're targeting Bare React Native
yarn add @magic-sdk/react-native-expo # If you're targeting Expo React Native

Alternatively, you can load via CDN by adding a script tag to your app’s <head>:

<script src="https://cdn.jsdelivr.net/npm/magic-sdk/dist/magic.js"></script>

Usage

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 one method! Magic works across all modern desktop, mobile Chrome, Safari and Firefox browsers.

import { Magic } from "magic-sdk"
import Web3 from 'web3';

const magic = new Magic('YOUR_API_KEY', { 
  network: "goerli",
});

const web3 = new Web3(magic.rpcProvider);
const accounts = await magic.wallet.connectWithUI();

📦 Package Ecosystem

Entry points

These are packages you can install to enable Magic JS SDK functionality for your client-side application.

Package Name Changelog Description
magic-sdk CHANGELOG Web/browser entry-point for Magic SDK.
@magic-sdk/react-native-bare CHANGELOG Bare React Native entry-point for Magic SDK.
@magic-sdk/react-native-expo CHANGELOG Expo React Native entry-point for Magic SDK.

Extensions

Extend Magic JS SDK functionality for your use-case through @magic-ext/* packages.

Internals

These are packages Magic JS SDK uses internally to work seamlessly across platforms.

Package Name Changelog Description
@magic-sdk/types CHANGELOG Core typings shared between JavaScript entry-points of Magic SDK.
@magic-sdk/pnp CHANGELOG A lightweight connector that wraps Magic JS authentication with a beautiful, functional out-of-the-box login form.
@magic-sdk/provider CHANGELOG Core business logic shared between JavaScript entry-points of Magic SDK.
@magic-sdk/commons CHANGELOG Exposes a listing of common public APIs from @magic-sdk/provider and @magic-sdk/types to the platform-specific entry points.
@magic-sdk/types CHANGELOG Core typings for Magic SDK packages.

🚦 Testing

Run tests for all packages

yarn test

Test an individual package

PKG=magic-sdk yarn test
PKG=@magic-sdk/react-native-bare yarn test
PKG=@magic-sdk/react-native-expo yarn test

Test specific files

yarn test /test/**/constructor.spec.ts

changelog

v9.1.0 (Tue Apr 04 2023)

🐛 Bug Fix

  • Merge branch 'master' into briancleary7114-sc-73967-auto-publish-canary-version-for-magic-sdk (@bcleary06)

Authors: 1


v9.0.0 (Fri Mar 31 2023)

🐛 Bug Fix

  • Merge remote-tracking branch 'origin/master' into jerryliu-sc-74424-email-otp-login-invalid-email-otp-event (@Ethella)

Authors: 1


v6.7.2 (Tue Mar 21 2023)

🐛 Bug Fix

  • Merge branch 'master' into briancleary7114-sc-71135-add-checkout-sdk-method (@bcleary06)

Authors: 1


v6.6.0 (Tue Feb 28 2023)

🐛 Bug Fix

  • Merge branch 'master' of github.com:magiclabs/magic-js into mushfichowdhury-login-with-email-otp-whitelabel (@mushfichowdhury-magic)

Authors: 1


v6.2.0 (Wed Jan 25 2023)

🚀 Enhancement

  • Bump Version of @magic-sdk/connect to 6.2.0, Again #441 (@Ariflo)
  • Bump Version of @magic-sdk/connect to 6.2.0 #438 (@Ariflo)
  • Permit React Native entry to Magic Connect Extension #433 (@Ariflo)

🐛 Bug Fix

  • Version Bump (@Ariflo)
  • Prevents Relayer from Overriding Status Bar Color #436 (@Ariflo)
  • Bump Version to 6.2.1 (@Ariflo)
  • Update README with platform delineation (@Ariflo)
  • Update README (@Ariflo)
  • Permit React Native entry to Magic Connect Extension (@Ariflo)

📝 Documentation

Authors: 1


v4.0.0 (Tue Dec 20 2022)

🚀 Enhancement

🐛 Bug Fix

  • Merge branch 'master' into mushfichowdhury-sc-61149-implement-event-emitting-in-magic-sdk-based (@mushfichowdhury-magic)

Authors: 2


v2.0.2 (Thu Sep 01 2022)

🐛 Bug Fix

  • add options param to requestUserInfo #342 (@bcleary06)
  • Merge branch 'master' into bc-sc-54489-add-required-flag-to-request-user-info (@bcleary06)
  • bump connect version to 2.0.1 (@bcleary06)
  • rename param option to isResponseRequired (@bcleary06)
  • add options param to requestUserInfo (@bcleary06)

Authors: 1


v2.0.0 (Fri Aug 05 2022)

💥 Breaking Change

🐛 Bug Fix

Authors: 1


Added

  • Magic Connect