DevelopersSKALE Developers
Integrations

Integrations

Elastic SKALE Chains are designed to work with all Ethereum compatible tools. If you are having difficulty integrating a tool with your SKALE Chain, please reach out to our community on discord, or submit a support request for help below.

API Based Wallets

API Based Wallets

The best way to manage your user authentication and on-boarding, is to integrate an API based wallet into your dApp. An API based wallet allows you to provide an intuitive user login flow for your users. An API based wallet can help you provide a secure and user friend wallet option. This is especially useful for your new users that are using a blockchain application for the first time. Being able to execute transactions programmatically directly from your dApp, takes the pressure off of your end user to have to manage this on their own.

Below, you will find a few options that will help make your user management and on-boarding seamless.

Bitski
Bitski

Bitski is an open-sourced solution that manages your user's wallet keys for you through their hosted SDK solution. With Bitski, your end users can signup with their email address to create a wallet. Then, you can execute transactions programmatically directly from your dApp using the wallet that Bitski creates for your end user.

For more information on Bitski, please see Bitski Developer Documentation.

To connect the Bitski's wallet management feature to SKALE, you will need to provide the Bitski Web3 provider with your SKALE Chain endpoint.

7 lines
const bitski = new Bitski("[YOUR-CLIENT-ID]", "[YOUR-REDIRECT-URL]");
const network = {
rpcUrl: "[YOUR_SKALE_CHAIN_ENDPOINT]",
chainId: 1
}
const provider = bitski.getProvider({ network });
let web3 = new Web3(provider);
Show More

Once connected, you can use Bitski and Web3 as normal.

4 lines
bitski.signIn().then(() => {
//signed in!
console.log("User has been signed in via Bitski!")
});
Show More
Portis
Portis

Portis is an open-sourced solution that manages your user's wallet keys for you through their hosted SDK solution. With Portis, your end users can signup with their email address to create a wallet. Portis allows your end users to trust your application for easier transaction processing for transaction that do not exceed $1 over an hour long period.

For more information on Portis, please see Portis Developer Documentation.

To connect the Portis' wallet management feature to SKALE, you will need to instantiate Portis with your SKALE Chain endpoint. Please note that Portis sends out transaction requests over HTTPS, and you will need to pass your HTTPS SKALE endpoint to Portis.

7 lines
const mySKALEChain = {
nodeUrl: "[YOUR_HTTPS_SKALE_CHAIN_ENDPOINT]",
chainId: 1,
nodeProtocol: 'rpc',
};
const portis = new Portis("[YOUR_PORTIS_ID]", mySKALEChain);
let web3 = new Web3(portis.provider);
Show More

Once connected, you can use Portis and Web3 as normal.

5 lines
portis.onLogin((walletAddress, email) => {
//signed in!
console.log("User" + walletAddress + "has been signed in via Portis!")
});
portis.showPortis();
Show More
Torus
Torus

Torus is an open-sourced solution that manages your user's wallet keys for you through their hosted SDK solution. With Torus, your end users can signup via Google or Facebook OAuth logins. This creates frictionless logins for dApps, that is easy for end users, and easy for dApp developers to implement.

For more information on Torus, please see Torus Developer Documentation.

To connect the Torus' wallet management feature to SKALE, you will need to instantiate Portis with your SKALE Chain endpoint.

8 lines
const torus = new Torus();
await torus.init({
network: {
host: [YOUR_SKALE_CHAIN_ENDPOINT],
chainId: 1,
networkName: 'SKALE Network'
}
});
Show More

Once connected, you can use Portis and Web3 as normal.

2 lines
await torus.login();
let web3 = new Web3(torus.provider);
Show More
Monitoring and Analytics Tools

Monitoring and Analytics Tools

Terminal.co
Terminal.co

Terminal is a monitoring, troubleshooting and analytics solution that surfaces dApp logs from all your web3 integrations, RPC endpoints, wallet providers, smart contracts, and different network sources in one place combined with visualizing the performance & usage of your dApp.

Terminal allows dApp developers real-time monitoring & debugging to make it easy to understand how your users are engaging with your dApp, gives you a better visibility of what’s working and what’s not. They make it easy to see your transactions across blockchains (Rinkeby, SKALE, Ethereum), as well as showing where the transactions are coming from (MetaMask, Portis, Bitski).

For more information on Terminal, please see Terminal Developer Documentation

To connect the Terminal monitoring feature to SKALE, you will need to provide the Terminal apiKey, Terminal ProjectID and SKALE endpoint:

17 lines
import {TerminalHttpProvider, Web3Versions} from '@terminal-packages/sdk';
const endpoint = "[YOUR-SKALE-ENDPOINT]";
const provider = [Your provider: Metamask, Portis, Bitski or Torus];
const web3 = new Web3(
new TerminalHttpProvider({
apiKey: "[YOUR-TERMINAL-API-KEY]",
projectId: "[YOUR-PROJECT-ID]",
customHttpProvider: provider,
source: "[Your source : "Metamask", "Portis", "Bitski" or "Torus"]",
networkSource : "SKALE"
host: endpoint,
//replace with Web3Versions.two if you are using version 2
web3Version: Web3Versions.one
})
);
Show More
Developers
  • Support & Learning
  • Languages &
Tooling
  • More
GET DEV UPDATES IN SKALE NEWSLETTER
JOIN THE CONVERSATION
© 2020 SKALE Labs. All right reserved.
skale.networkCookiesPrivacy Policy