whisper-tools
TypeScript icon, indicating that this package has built-in type declarations

0.0.16 • Public • Published

whisper-tools

Whisper is a dark communications protocol that is parallel to the decentralized web3 vision of Ethereum. The whisper-tools library is a stand-alone API wrapper over the shh RPC calls.

Overview

Bring whisper-tools into your project by installing it from npm.

npm i whisper-tools

You then import the WhisperApi class and instantiate into a new shh object.

import { WhisperApi } from "whisper-tools";
 
const shh = new WhisperApi("http://localhost:8545");
 
const main = async () => {
    const info = await shh.info();
    const keypairId = await shh.newKeyPair();
}
 
main();

or if you are using plain old JS...

const { WhisperApi } = require("whisper-tools");

Notice! You must be running geth with the following flags enabled to use this library.

geth --shh --rpc --nodiscover

You can remove --nodiscover if you would like to try to connect to other nodes. But be wary, it will also start syncing the Ethereum mainnet.

If you are using this library from a development server (such as create-react-app), you will need to enable cors on geth with the flag --rpccorsdomain "*".

FAQs

Doesn't the web3.js library have whisper?

Yes. This is an alternative that may be better for your use case, if you intend to only use Whisper and not the other functionality that web3 brings in. At the time of writing, this package also makes use of the latest v.6.0 Whisper API while web3.js still uses the older v.5.0.

Readme

Keywords

none

Package Sidebar

Install

npm i whisper-tools

Weekly Downloads

13

Version

0.0.16

License

GPL-3.0

Unpacked Size

32.8 kB

Total Files

11

Last publish

Collaborators

  • airwavves