• Stars
    star
    131
  • Rank 268,465 (Top 6 %)
  • Language
    TypeScript
  • Created over 3 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Pluggable auth infrastructure for Web3 wallets and dapps

OpenLoginSdk by Web3Auth

Web3Auth is where passwordless auth meets non-custodial key infrastructure for Web3 apps and wallets. By aggregating OAuth (Google, Twitter, Discord) logins, different wallets and innovative Multi Party Computation (MPC) - Web3Auth provides a seamless login experience to every user on your application.

lerna code style: prettier npm

Packages @latest Version Size Description
🏠 Core
@toruslabs/openlogin npm version minzip Default package to be used to work with OpenLogin auth system
openlogin npm version minzip Wrapper package for @toruslabs/openlogin
🔌 Modules
@toruslabs/openlogin-jrpc npm version minzip Allows you to make JRPC requests easily. Creates & Manages JRPC Engines
@toruslabs/openlogin-ed25519 npm version minzip Allows you to get an ed25519 private key from a secp256k1 private key
@toruslabs/openlogin-subkey npm version minzip Allows you to derive an app-scoped key from a root key + client id via mimc hash
@toruslabs/openlogin-starkkey npm version minzip Allows you to get a starknet compatible private key from a secp256k1 private key
🐉 Low-Level
@toruslabs/openlogin-utils npm version minzip Shared TypeScript Types

Introduction

Your OpenLogin account is a cryptographic key that acts as a proxy to traditional SSOs. Accounts are secured across user devices and authentication methods - there is no central server, no data honey pot. It combines both CustomAuth and tKey and provides you with a nice UI and UX flows

This module generates the javascript to include in a DApp via a script tag. It creates an iframe that loads the OpenLogin page and sets up communication streams between the iframe and the DApp javascript context.

Features

  • Typescript compatible. Includes Type definitions

Please refer to docs for API Reference available here.

Installation

Bundling

Each sub package is distributed in 3 formats

  • esm build dist/<MODULE_NAME>.esm.js in es6 format
  • commonjs build dist/<MODULE_NAME>.cjs.js in es5 format
  • umd build dist/<MODULE_NAME>.umd.min.js in es5 format without polyfilling corejs minified

By default, the appropriate format is used for your specified usecase You can use a different format (if you know what you're doing) by referencing the correct file

The cjs build is not polyfilled with core-js. It is upto the user to polyfill based on the browserlist they target

Directly in Browser

CDN's serve the non-core-js polyfilled version by default. You can use a different

jsdeliver

<script src="https://cdn.jsdelivr.net/npm/<MODULE_NAME>"></script>

unpkg

<script src="https://unpkg.com/<MODULE_NAME>"></script>

Build

Ensure you have a Node.JS development environment setup:

git clone https://github.com/torusresearch/OpenLoginSdk.git
cd OpenLoginSdk
npm i
npm run build

To run tests:

npm test

Requirements

  • This package requires a peer dependency of @babel/runtime
  • Node 16+
  • You will need to whitelist your domain on developer dashboard

💬 Troubleshooting and Discussions

  • Have a look at our GitHub Discussions to see if anyone has any questions or issues you might be having.
  • Checkout our Troubleshooting Documentation Page to know the common issues and solutions
  • Join our Discord to join our community and get private integration support or help with your integration.

License

OpenLoginSdk is MIT Licensed

More Repositories

1

torus-node

Torus nodes run a Distributed Key Generation protocol amongst themselves that allows for the generation, storage and assignment of cryptographic keys
Go
216
star
2

torus-embed

Embeds the Torus Wallet directly in your application via torus-embed. Exposes a Web3 Provider.
TypeScript
84
star
3

torus-website

Torus Wallet that provides dapps logins that feel like Web2.0
JavaScript
76
star
4

CustomAuth

Tools that allow applications to interact with the Torus Network. For integration, look at docs.web3auth.io
TypeScript
72
star
5

solana-wallet

TypeScript
23
star
6

pvss

Publicly Verifiable Secret Sharing, and more...
Go
21
star
7

torus.js

Handle communication with torus nodes
TypeScript
21
star
8

customauth-swift-sdk

Swift SDK that allows applications to directly interact with the Torus Network, similar to how Torus Wallet does.
Swift
11
star
9

audit

Audits done across the Torus codebases
11
star
10

customauth-android-sdk

Java
10
star
11

customauth-react-native-sdk

Java
9
star
12

customauth-flutter-sdk

Swift
9
star
13

eccrypto

JavaScript
9
star
14

solana-embed

Embeds the Solana Wallet directly in your application via solana-embed. Exposes a Web3 Provider.
TypeScript
9
star
15

loglevel-sentry

TypeScript
9
star
16

torus-e2e-tests

End-to-end testing of Torus products.
TypeScript
8
star
17

documentation

Use documentation
8
star
18

solana-react-native-sdk

TypeScript
7
star
19

torus-documentation

JavaScript
7
star
20

torus-direct-unity-sdk

C#
7
star
21

torus-metadata

TypeScript
6
star
22

openlogin-expo-sdk

OpenLogin SDK for React Native that uses Expo instead of native libraries.
TypeScript
6
star
23

w3a-mpc-demo

TypeScript
6
star
24

torus-cli

JavaScript
6
star
25

torus-extension

Threshold-bak implementation on metamask extension
JavaScript
6
star
26

fetch-node-details-swift

SDK for integrating torus in iOS applications
Swift
5
star
27

torus-serverless

Hosts the serverless API's
JavaScript
5
star
28

customauth-android-sample

Kotlin
5
star
29

openlogin-solana-example

JavaScript
5
star
30

react-native-web-browser

Web Browser module for React Native ported from expo-web-browser
TypeScript
4
star
31

http-helpers

http helpers
TypeScript
4
star
32

torus-apple-nativelogin-demo

Demo application for apple id native logins on ios
Swift
4
star
33

openlogin-polygon-example

JavaScript
4
star
34

torus-solana-example

Example integration of torus direct auth with solana
JavaScript
4
star
35

web3-test

JavaScript
4
star
36

openlogin-binance-example

JavaScript
4
star
37

openlogin-web3modal-example

JavaScript
4
star
38

tss-client

TypeScript
4
star
39

openlogin-zkSync-example

JavaScript
4
star
40

serviceworker-server

HTML
3
star
41

torus-utils-swift

Swift package for fetching shares from torus-nodes
Swift
3
star
42

torus-matic

Vue
3
star
43

customauth-swift-sample

Swift
3
star
44

fetch-node-details

Fetches the node details from torus nodelist smart contract
TypeScript
3
star
45

blocusign

Vue
3
star
46

torus-utils-java

Java
3
star
47

openlogin-terra-example

openlogin X terra example
JavaScript
3
star
48

msg-editor

Go
3
star
49

ganache-http-proxy

proxy https traffic to http for localhost
JavaScript
3
star
50

openlogin-avalanche-example

JavaScript
3
star
51

rawtransaction

JavaScript
3
star
52

torus-bridge

bridge server
JavaScript
3
star
53

openlogin-android-sdk

Kotlin
2
star
54

verenc

Rust
2
star
55

metadata-helpers

Helpers for modifying metadata on a storage layer
TypeScript
2
star
56

openlogin-expo-bare-sample

Java
2
star
57

solana-embed-react-demo

TypeScript
2
star
58

webauthn-test

JavaScript
2
star
59

torus-direct-android-native-logins

Kotlin
2
star
60

openlogin-react-native-sdk

Java
2
star
61

fetch-node-details-java

Fetches Torus Node Details
Java
2
star
62

tkey-rust-ios-example

Swift
2
star
63

torus-swift-direct-sdk-demo-application

torus-swift-direct-sdk-demo-application
Swift
2
star
64

customauth-flutter-sample

Dart
2
star
65

hackathon-bounties

Lists the bounties for eth-waterloo hackathon
2
star
66

openlogin-ethereum-example

JavaScript
2
star
67

react-native-self-host-example

react native tkey/selfhost example
Java
2
star
68

customauth-react-native-sample

JavaScript
2
star
69

torus-timer

JavaScript
2
star
70

efficient-tss

JavaScript
2
star
71

kreme

TypeScript
2
star
72

torus-wagmi-connector

TypeScript
2
star
73

torus-direct-swift-sdk-mock-example

Swift
2
star
74

solana-rn-example

Java
2
star
75

openlogin-chrome-extension

POC for using the chrome extension with openlogin
JavaScript
2
star
76

jwt-prover-cairo

Python
2
star
77

openlogin-arbitrum-example

JavaScript
2
star
78

solana-redirect-react-native-sample

TypeScript
2
star
79

solana-serialization-bug

JavaScript
2
star
80

casper-embed

Embeds the Casper Wallet directly in your application via casper-embed. Exposes a Web3 Provider.
TypeScript
2
star
81

eth-key-store

Exploring succinct key stores on Ethereum.
Solidity
2
star
82

tkey-rust-ios

Swift
1
star
83

openlogin-swift-sdk

Swift
1
star
84

torus-mpc

TypeScript
1
star
85

tss-client-swift

Swift
1
star