create-web3-provider

Easily create a web3 provider from scratch.

Usage no npm install needed!

<script type="module">
  import createWeb3Provider from 'https://cdn.skypack.dev/create-web3-provider';
</script>

README

npm package

create-web3-provider

Create a web3 provider from scratch, with minimal to no configuration.

You can then pass the created provider directly into the Web3 constructor.

Installation

npm install create-web3-provider
# or
yarn install create-web3-provider

Example Usage

const cw3p = require('create-web3-provider');
// Create an infura-backed provider on the mainnet.
let provider = cw3p();
// Create an infura-backed provider on the ropsten network.
provider = cw3p({network: 'ropsten'});
// Same, but use websockets.
provider = cw3p({ws: true, network: 'ropsten'});
// Create an infura-backed provider using your own API key.
provider = cw3p({infuraKey: 'MySecretInfuraKey'});
// Create a provider connected to 'http://localhost:8545'
provider = cw3p({uri: 'http://localhost:8545'});
// Create a provider connected to a websocket.
provider = cw3p({uri: 'ws://mydomain.com/path'});
// Create a provider connected to an IPC path.
provider = cw3p({uri: '/path/to/provider.ipc', net: require('net')});

// Full options:
cw3p({
    // Network to connect to. May be 'main', ''mainnet', 'ropsten', or 'rinkeby'.
    network: String,
    // Infura project ID, if not connecting to a custom provider.
    infuraKey: String,
    // Use websocket infura endpoint instead of HTTP.
    ws: Boolean,
    // Connect to a custom provider.
    // May be an http://, https://, ws://, wss:// or IPC path.
    // IPC paths require the 'net' option as well.
    uri: String,
    // If using an IPC path, set this to `require('net')`
    net: Object,
    // Array of {name: ..., value: ...} HTTP or websocket headers.
    headers: Array,
    // Timeout for HTTP or websocket requests, in ms.
    timeout: Number
});