Home

Awesome

Plug Controller - Controller functions for the Plug Extension

Fleek Discord

Introduction

The Plug Controller is a package that provides utility & logic to the Plug browser wallet extension, as well as the account creation and management. It handles the interactions between the extension and the Internet Computer as users interact with accounts, balances, canisters, and the network.

Installation

npm install @psychedelic/plug-controller

To install the package you need to be authenticated to Github via npm login, ensure that you have:

npm login --registry=https://npm.pkg.github.com --scope=@Psychedelic

Plug KeyRing

A Plug Keyring is a class that manages the user's accounts and allow you to create/import a mnemonic and its keypair.

import PlugController from '@psychedelic/plug-controller';

const keyRing = new PlugController.PlugKeyRing();

// Initialize keyring and load state from extension storage
await keyRing.init();

Keyring Creation

// Creates the keyring and returns the default wallet
const wallet: PlugWallet = await keyRing.create(password);

Mnemonic Import

// Creates the keyring using the provided mnemonic and returns the default wallet
const wallet: PlugWallet = await keyRing.importFromMnemonic(mnemonic, password);

Documentation

Interface and Type definitions documents for the @Psychedelic/plug-controller implementation is provided in the following location.

These are based in the main release branch and provide a good overview of the whole package (modules, IDL's, utils, etc).