squarelink v1.1.4
Squarelink Web3 SDK
This is the Squarelink Web3 SDK which enables Squarelink enhancements to standard Web3 JSON RPC requests.
Check out the Squarelink Documentation for more information, quick-start guides, etc.
Installation
Node
$ npm install squarelinkCDN
<script src="https://squarelink.com/js/squarelink.min.js"></script>Usage
First, register your application at dev.squarelink.com to obtain your CLIENT ID
import Web3 from 'web3'
import Squarelink from 'squarelink'
const sqlk = new Squarelink('<CLIENT ID>')
// Use callback or Promise
sqlk.getProvider(provider => {
const web3 = new Web3(provider)
// Use the web3 library as you would normally!
web3.currentProvider.enable()
})Configuration
const sqlk = new Squarelink(clientId [, network][, opts])
Squarelink-Object - Initializes a Squarelink Web3 Provider for you
clientId-String- The Client ID provided to you when you register your DApp in the Squarelink Developer Consolenetwork-String|Object- Configures the RPC node you're connecting to. See a list of our available networks. Defaults to 'mainnet'.opts-Object- Pass additional options to the Squarelink SDK.
Examples
// connect to the Ropsten network
new Squarelink('<CLIENT ID>', 'ropsten')// connect to a custom private network
new Squarelink('<CLIENT ID>', {
url: 'https://localhost:8545',
chainId: 420
})Options (opts)
scope-Array- Request additional scopes to use custom Squarelink functions.useSync-Boolean- See getProviderSync below for usage (default = false).
Available Scopes:
user- Equivalent to all scopes belowuser:name- Access to read user's nameuser:email- Access to user's email addressuser:security- Access to read user's security settings
Detecting Squarelink
web3.currentProvider.isSquarelinkAdditional Functions
Squarelink.getName() - requires the
useroruser:namescopeSquarelink.getEmail() - requires the
useroruser:emailscopeSquarelink.getSecuritySettings() - requires the
useroruser:securityscope
Initializing Squarelink Synchronously
The getProvider function fetches a list of our supported networks and their RPC endpoints from our API. This allows us to remotely switch RPC providers to ensure 100% uptime and remove faulty/compromised endpoints.
If you are unable to support callbacks/promises, you can use getProviderSync which uses hard-coded RPC endpoints. NOTE: we cannot guarantee 100% uptime with this method.
const sqlk = new Squarelink('<CLIENT ID>', 'mainnet', { useSync: true })
const web3 = new Web(sqlk.getProviderSync())Documentation
License
MIT
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago