npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@getsafle/vault-concordium-controller

v1.0.2

Published

Concordium chain controller for Safle Vault

Readme

vault-concordium-controller

npm version Discussion

Concordium controller for Safle Vault - A module written in JavaScript for managing Concordium accounts, identity operations, and transactions in Safle Vault.

Installation

npm install --save @getsafle/vault-concordium-controller

Initialize the Concordium Controller class

const { KeyringController, NETWORKS } = require('@getsafle/vault-concordium-controller');

const concordiumController = new KeyringController({
  // Optional configuration
  mnemonic: 'your mnemonic here', // Optional, will generate new if not provided
  network: 'Testnet', // Default is 'Testnet', can be 'Mainnet'
  identityIndex: 0, // Default identity index
  encryptor: {
    // An optional object for defining encryption schemes
    encrypt(password, object) {
      return new Promise('encrypted!');
    },
    decrypt(password, encryptedString) {
      return new Promise({ foo: 'bar' });
    },
  },
});

Methods

Set Network

// Change between Testnet and Mainnet
await concordiumController.setNetwork('Mainnet');

Get Network Configuration

// Get current network configuration
const networkConfig = concordiumController.getNetworkConfig();

Identity Management

Get Identity Providers

// Fetch list of available identity providers
const providers = await concordiumController.getIdentityProviders();

Set Identity Provider

// Set the identity provider to use
await concordiumController.setIdentityProvider(provider);

Create Identity Request

// Create a new identity request
const identityRequest = await concordiumController.createIdentityRequest();

Send Identity Request

// Send identity request to the provider
const redirectUrl = await concordiumController.sendIdentityRequest(identityRequest, 'your-redirect-uri');

Retrieve Identity

// Retrieve the identity object after user completes verification
const identity = await concordiumController.retrieveIdentity(redirectUrl);

Initialize Identity

// Initialize identity for account creation
await concordiumController.initializeIdentity(identity);

Clear Identity Flow

// Clear current identity flow data
concordiumController.clearIdentityFlow();

Account Management

Add Account

// Create a new account
const account = await concordiumController.addAccount();
// Returns: { address: 'account-address' }

Get Accounts

// Get all accounts
const addresses = await concordiumController.getAccounts();

Get Balance

// Get balance for an account
const { balance } = await concordiumController.getBalance('account-address');

Transaction Operations

Create Transfer Transaction

// Create a transfer transaction
const transaction = await concordiumController.createTransferTransaction(
  'receiver-address',
  10, // Amount in CCD
  'sender-address'
);

Sign Transaction

// Sign a transaction
const signature = await concordiumController.signTransaction(transaction);

Send Transaction

// Send a signed transaction
const { transactionDetails } = await concordiumController.sendTransaction(transaction, signature);

Recovery Operations

Restore Identity

// Restore identity using seed phrase
const identity = await concordiumController.restoreIdentityDynamic();

Restore Accounts

// Restore accounts from network
const accounts = await concordiumController.restoreAccounts();

License

MIT