npm.io
2.5.7 • Published 1 month ago

@base-org/account

Licence
Apache-2.0
Version
2.5.7
Deps
9
Size
9.6 MB
Vulns
0
Weekly
0
Stars
168

Base Account SDK

Base Account SDK allows dapps to connect to Base Account

  1. Base Account

Installing Base Account SDK

  1. Check available versions:

      # yarn
      yarn info @base-org/account versions
    
      # npm
      npm view @base-org/account versions
  2. Install latest version:

    # yarn
    yarn add @base-org/account
    
    # npm
    npm install @base-org/account
  3. Check installed version:

    # yarn
    yarn list @base-org/account
    
    # npm
    npm list @base-org/account
Upgrading Base Account SDK
  1. Compare the installed version with the latest:

    # yarn
    yarn outdated @base-org/account
    
    # npm
    npm outdated @base-org/account
  2. Update to latest:

    # yarn
    yarn upgrade @base-org/account --latest
    
    # npm
    npm update @base-org/account
Basic Usage
  1. Initialize Base Account SDK

    const sdk = createBaseAccountSDK({
      appName: 'SDK Playground',
    });
  2. Make Base Account Provider

    const provider = sdk.getProvider();
  3. Request accounts to initialize a connection to wallet

    const addresses = provider.request({
      method: 'eth_requestAccounts',
    });
  4. Make more requests

    provider.request('personal_sign', [
      `0x${Buffer.from('test message', 'utf8').toString('hex')}`,
      addresses[0],
    ]);
  5. Handle provider events

    provider.on('connect', (info) => {
      setConnect(info);
    });
    
    provider.on('disconnect', (error) => {
      setDisconnect({ code: error.code, message: error.message });
    });
    
    provider.on('accountsChanged', (accounts) => {
      setAccountsChanged(accounts);
    });
    
    provider.on('chainChanged', (chainId) => {
      setChainChanged(chainId);
    });
    
    provider.on('message', (message) => {
      setMessage(message);
    });
Developing locally and running the test dapp
  • The Base Account SDK test dapp can be viewed here https://base.github.io/account-sdk/.

  • To run it locally follow these steps:

    1. Fork this repo and clone it
    2. From the root dir run yarn install
    3. From the root dir run yarn dev

Script Tag Usage

Base Accunt can be used directly in HTML pages via a script tag, without any build tools:

<!-- Via unpkg -->
<script src="https://unpkg.com/@base-org/account/dist/base-account.min.js"></script>

<!-- Via jsDelivr -->
<script src="https://cdn.jsdelivr.net/npm/@base-org/account/dist/base-account.min.js"></script>

Once loaded, the SDK is available as window.base and window.createBaseAccountSDK:

// Make a payment
const result = await window.base.pay({
  amount: "10.50",
  to: "0xYourAddress...",
  testnet: true
});

// Check payment status
const status = await window.base.getPaymentStatus({
  id: result.id,
  testnet: true
});

// Create Base Account Provider
const provider = window.createBaseAccountSDK().getProvider()

Keywords