⚠️ This package is slowly being phased out in favor of a new more decentralized system called IDX (https://idx.xyz) which is built on top of the Ceramic network. You can use it for now, but be aware that support will be limited as Ceramic is moving closer to a mainnet release.
3ID-Connect is a 3ID account management service run in an iframe. It allows you to authenicate, manage, and permission your 3ID keys to applications. Used by default in 3box-js. identity-wallet-js handles most operations and the parent window (application) communicates with iframe service over RPC layer as defined by 3ID JSON-RPC
Right now you authenticate and link ethereum accounts to mange your 3ID, in the future other keypairs, blockchain accounts, and authentication methods can be added.
The next verion of 3ID-Connect is being developed on Ceramic and identity-wallet-js V2. It is being developed in parallel with the current version. You can find 3ID-Connect with Ceramic support in the following repo. In the future this repo will be depracated. It is released at 3id-connect@next and available at 3idconnect.org.
- /src - Core logic and consumable interfaces for clients and iframe
- /threeIdConnect.js - Application interface (RPC client) to load iframe and return 3ID provider.
- /threeIdConnectService.js - Identity wallet instance and RPC 'server' to handle requests
- /threeIdProviderProxy.js - 3ID provider interface that relays request through RPC layer
- /iframe - all html, css, js, design assets for iframe and flow
- /public - build assets deployed for iframe
Clone and install dependencies
Will serve iframe locally on port 30001
$ npm run start
$ npm run build