Skip to content

Clarification and reference documentation for default config #323

@krisbitney

Description

@krisbitney

We should update our documentation to improve our explanation of the default client configuration. The documentation needs to provide a better explanation of what is happening in the default configuration and what is available to the user. This may need to be two separate documentation entries: one introductory, and one for advanced users.

Case Study

In a recent user study, the user struggled with Ethereum Wallet plugin configuration.

Even if a user knew how to configure the plugin, they wouldn't know the correct URI to use to override the Ethereum wallet plugin in the default config because the default configuration URIs are not in the docs. Using the wrong URI would cause problems because the default config depends on URI redirects and interface implementation declarations.

This especially applies to the Ethereum Wallet plugin because it is the only default plugin that requires configuration in the common case.

// entry for EthereumWallet plugin in default config
ethereumWallet: {
  uri: "plugin/ethereum-wallet@1.0",
  package: EthWallet.plugin({
    connections: new EthWallet.Connections({
      networks: {
        mainnet: new EthWallet.Connection({
          provider:
            "https://mainnet.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
        }),
        goerli: new EthWallet.Connection({
          provider:
            "https://goerli.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
        }),
      },
    }),
  }) as IWrapPackage,
  implements: ["wrapscan.io/polywrap/ethereum-wallet@1.0"],
  redirectFrom: ["wrapscan.io/polywrap/ethereum-wallet@1.0"],
},

The documentation should contain the plugin URIs that are used in the default config. They must be kept up to date.

// EthereumWallet plugin URI
"plugin/ethereum-wallet@1.0"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions