Skip to Content
Open SourceAssetsWeb3@exodus/web3-management

@exodus/web3-management

Apps connectivity library for Exodus management.

Usage

const EventEmitter = require('events');
 
// Separate entry points are supported
const { ManagementProvider } = require('@exodus/web3-management/provider');
const { registerRPCHandlers } = require('@exodus/web3-management/rpc');
 
// Create transport.
const transport = new EventEmitter();
transport.write = (data) => {
  setTimeout(() => {
    transport.emit('data', data);
  });
};
 
// Create Exodus global API.
const accountsObservable = new Observable();
 
const exodus = {
  management: new ManegementProvider({
    transport,
  }),
};
 
// Inject the Exodus object into the app.
window.exodus = exodus;
 
// Register RPC handlers for requests the Provider can call.
registerRPCHandlers({
  transport,
  deps: {}, // required deps
});

Use cases

Wallet selector feature

img.png

To improve code reusability the feature works by utilizing the separate ManagementProvider class and its own RPC, which are both asset-agnostic.

Here’s a high-level data flow chart (Ethereum Provider is used as an example):

Last updated on

Start building

XO

Request Demo

Schedule a call with our team

Select a product
Arrow right