Torus is a user-friendly, secure, and non-custodial key management system for DApps. We're focused on providing mainstream users a gateway to the decentralized ecosystem.

Type: Non-custodial/HD
Private Key Storage: User’s local browser storage / Encrypted and stored on torus’ servers
Communication to Ethereum Ledger: Infura
Private key encoding: Mnemonic/Social-Auth-login

Depending on your applications needs Torus can be integrated via the Torus Wallet, or through interacting directly with the Torus Network via DirectAuth. For more...

1. Torus Wallet integration

If your application is already compatible with Metamask/other web3 providers, integrating the Torus Wallet would give you a provider to wrap the same web3 interface. You can install via a npm package or ipfs. or jsdelivr or unpkg. For more...

  1. Integrte via:
npm i @toruslabs/torus-embed
  1. Script
import Torus from "@toruslabs/torus-embed";
import Web3 from "web3";
const torus = new Torus({
buttonPosition: "top-left" // default: bottom-left
await torus.init({
buildEnv: "production", // default: production
enableLogging: true, // default: false
network: {
host: "mumbai", // default: mainnet
chainId: 80001, // default: 1
networkName: "Mumbai Test Network" // default: Main Ethereum Network
showTorusButton: false // default: true
await torus.login(); // await torus.ethereum.enable()
const web3 = new Web3(torus.provider);

2. DirectAuth integration

If you're looking to control your own UX, from logins to every interaction DirectAuth is the integration for you. You can integrate via one of our SDKs depending on the platform/s you are building on. For more...

Please read here