New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

steem-rpc

Package Overview
Dependencies
Maintainers
1
Versions
22
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

steem-rpc

Websocket RPC library for the Steem blockchain

  • 0.2.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
28
increased by460%
Maintainers
1
Weekly downloads
 
Created
Source

npm version npm downloads

steem-rpc

A simple websocket wrapper enabling RPC communication with the steem client steemd for node.js and browsers.

Installation

This library is available as an NPM module:

npm install steem-rpc

If you would like to use it in a browser, browser builds are available in /build. An example is provided in examples/index.html

Node/Webpack/Browserify usage

The library needs to initialize a connection and retrieve some api references before it is ready to be used. A simple init and use case can be seen in example/example.js and can be launched with npm run example

const client = require("steem-rpc")
const options = {
	// user: "username",
	// pass: "password",
	// url: "ws://localhost:9090",
	// debug: false
};

var Api = new client(options);

Api.get().initPromise.then(response => {
	console.log("Api ready:", response);

	Api.get().dbApi().exec("get_dynamic_global_properties", []).then(response => {
		console.log("get_dynamic_global_properties", response);
	})
});

By default the library will connect to Steemit's public websocket api at wss://steemit.com/ws. If you'd like to use another server, simply pass it in the options object:

const options = {
	url: "ws://localhost:9090"
}

This library borrows heavily from James Calfee's websocket RPC implementation for the Bitshares GUI which can be found here: https://github.com/cryptonomex/graphene-ui/tree/master/dl/src/rpc_api

Example api commands

There's a handy "shortcut" api call that will get you a global state object:

get_state(string route)

You can call this with an empty string, or with a category like trending.

Api.get().dbApi().exec("get_state", ["trending"]).then(response => {
	console.log("get_state", response);
})

The full list of api calls is this:

	cancel_all_subscriptions
	get_account_count
	get_account_history
	get_account_references
	get_account_votes
	get_accounts
	get_active_categories
	get_active_votes
	get_active_witnesses
	get_best_categories
	get_block
	get_block_header
	get_chain_properties
	get_config
	get_content
	get_content_replies
	get_conversion_requests
	get_current_median_history_price
	get_discussions_by_active
	get_discussions_by_author_before_date
	get_discussions_by_cashout
	get_discussions_by_children
	get_discussions_by_created
	get_discussions_by_hot
	get_discussions_by_payout
	get_discussions_by_trending
	get_discussions_by_votes
	get_dynamic_global_properties
	get_feed_history
	get_hardfork_version
	get_key_references
	get_miner_queue
	get_next_scheduled_hardfork
	get_order_book
	get_potential_signatures
	get_recent_categories
	get_recommended_for
	get_replies_by_last_update
	get_required_signatures
	get_state
	get_transaction
	get_transaction_hex
	get_trending_categories
	get_trending_tags
	get_witness_by_account
	get_witness_count
	get_witness_schedule
	get_witnesses
	get_witnesses_by_vote
	lookup_account_names
	lookup_accounts
	lookup_witness_accounts
	set_block_applied_callback
	set_pending_transaction_callback
	set_subscribe_callback
	verify_account_authority
	verify_authority

FAQs

Package last updated on 04 Jul 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc