@web3auth/single-factor-auth SDK is simple and easy-to-use SDK, which helps you implement the Web3Auth without redirection in a single
key pair flow.
With the Web3Auth Plug and Play Web SDKs you can easily and quickly authenticate users and reconstruct their private key. Web3Auth Plug and Play Web
SDK redirects users to a Web3Auth-hosted screen (i.e.
http://app.openlogin.com). This flow is great for most use cases. Still, sometimes you may
want to customize the authentication flow such that you can have more control over the UI and UX of the authentication process (i.e. to avoid the
redirection). This can be achieved through our new
@web3auth/single-factor-auth SDK, where now, you'll be able to use Web3Auth and avoid the
redirection to OpenLogin-hosted screens.
@web3auth/single-factor-auth SDK gives you the simplest flow for onboarding a user with Web3Auth. The user just needs to click on the login
button, connect to their favorite social account (OAuth) or any passwordless flow, like email-passwordless, biometric authentication etc., and a
private key is generated for them. This flow has a 1/1 Key Share setup and the whole key via Web3Auth Auth Network key shares is provided directly to
your app, and reconstructed within it.
This flow is still noncustodial since the nodes in the Web3Auth network have a 5/9 consensus mechanism to generate the key shares. However, one can claim that this flow is custodial to the OAuth Login provider since this is directly generated using credentials provided by them.
Hence we can call this flow a semi-custodial flow, and encourage users to enable MFA to have a 2/3 Key Share setup, which is fully non-custodial.
This Documentation is based on
7.0.1 SDK Version.
- This is a frontend SDK and can only run in a browser environment
- Basic knowledge of JavaScipt
Quick Start: Integrate Web3Auth in 4 Simple Steps.
Example Applications: Explore our example applications and try the SDK yourself.
Troubleshooting: Find quick solutions to common issues faced by developers.
Source Code: Web3Auth is open sourced. You can find the source code on our GitHub repository.
Community Portal: Join our community to get support from our team and other developers.
For an optimal flow that allows users to create an MFA setup if desired, use a combination of Web3Auth Single Factor Auth Web SDK and Web3Auth No Modal SDK for a one-key flow without redirection. Follow this guide for step-by-step instructions.
For making RPC calls within your dApp, Web3Auth exposes respective providers for different chains. This provider can be used to interact with the connected chain using exposed functions within the provider. Currently Web3Auth supports providers for both EVM and Solana chains. For other chains, one can easily get the private key from the Web3Auth SDK.
Plugins extend the functionality of Web3Auth, helping you to add more features to your application. These features can be used to extend the UI functionalities, making your Web3Auth instance more interoperable, adding wallet features and a lot more!
Currently, we support UI plugins for wallet operations, helping you with flows to add funds, manage transactions, provide wallet UI and much more. This helps you avoid making wallet flows within your application. Additionally, for interoperability with multiple applications, these packages give you the advantage of using the same key from Web3Auth across multiple applications.
Common Types and Interfaces
This package gives access to common types and interfaces for Web3Auth. This comes in handy by providing you a standard way of importing the values you need to work with the SDKs. We highly recommend using it while working with Typescript.