Account management for 3Box

Usage no npm install needed!

<script type="module">
  import idConnect from 'https://cdn.skypack.dev/3id-connect';


Discord Twitter Follow


⚠️ 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 Image

Find 3ID-Connect on Ceramic here.

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.

3ID-Connect Ceramic

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

Run Locally

Will serve iframe locally on port 30001

$ npm run start


$ npm run build