Accounts
To send data to the aleph.im network, you need to have an account. This account can be made using any of the supported wallet providers.
Supported chains
- Ethereum (and all EVM compatible chains)
- Avalanche
- Solana
- Polkadot / Substrate
- NULS 2
- Tezos
- Cosmos / Tendermint
Usage
Chains provide a newAccount
function for testing purposes. Example using Ethereum:
Browser wallets
Most chains allow you to retrieve an account from a browser based wallet (ex: Metamask).
import { getAccountFromProvider } from '@aleph-sdk/ethereum';
const account = getAccountFromProvider(window.ethereum);
Node.js/Server wallets
You can also retrieve an account from a private key or mnemonic (or generate one on the fly) like this:
import { importAccountFromPrivateKey } from '@aleph-sdk/ethereum';
// just an example, DO NOT USE THIS private key!
account = importAccountFromPrivateKey("0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0");
Streaming payments (Superfluid)
In January 2024, the network started supporting a new payment model, together with the launch of the TwentySix Cloud platform, where users pay using streams of ALEPH tokens on compatible chains.
import { getAccountFromProvider } from '@aleph-sdk/superfluid';
const account = getAccountFromProvider(window.ethereum);
// initialize the wallet
await account.init();
// increase a flow (in ALEPH/hour)
const receiver = "0x1234567890123456789012345678901234567890";
account.increaseALEPHFlow(receiver, 1);
// get the net flow of ALEPH/hour
const flow = account.getALEPHFlow();