nostr-tools
Tools for developing Nostr clients.
Usage
import {relayPool} from 'nostr-tools'
const pool = relayPool()
pool.setPrivateKey('<hex>')
pool.addRelay('ws://some.relay.com', {read: true, write: true})
pool.addRelay('ws://other.relay.cool', {read: true, write: true})
pool.onEvent((event, context, relay) => {
console.log(`got a relay with context ${context} from ${relay.url} which is already validated.`, event)
})
pool.subKey('<hex>')
pool.subKey('<hex>')
pool.subKey('<hex>')
pool.reqFeed()
pool.reqEvent({id: '<hex>'})
pool.reqKey({key: '<hex>'})
pool.publish(<event object>)
// it will be signed automatically with the key supplied above
// or pass an already signed event to bypass this
// subscribing to a new relay
pool.addRelay('<url>')
// will automatically subscribe to the all the keys called with .subKey above
For other utils please read the source (for now).