Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
magic-sdk
Advanced tools
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
@magic-sdk/react-native-bare
README for Bare React Native package specific information.@magic-sdk/react-native-expo
README for Expo React Native package specific information.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>
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();
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. |
Extend Magic JS SDK functionality for your use-case through @magic-ext/*
packages.
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. |
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
FAQs
Passwordless authentication for the web.
The npm package magic-sdk receives a total of 23,699 weekly downloads. As such, magic-sdk popularity was classified as popular.
We found that magic-sdk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 18 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.