Steem-tx | Lightweight JavaScript library for creating and signing transactions on the Steem blockchain

avatar
(Edited)


steem-tx.jpg

steem-tx-js

Lightweight JavaScript library for creating, signing, and broadcasting transactions on the Steem blockchain



Important:
As this post gets older, please check official GitHub repository for the latest instructions and updates.


Why this?

steem-js and dsteem libraries are not easy to integrate and in some cases are incompatible with some frameworks like Nativescript

NativeScript is an open-source framework to develop apps on the Apple iOS and Android platforms. It was originally conceived and developed by Progress. NativeScript apps are built using JavaScript, or by using any language that transpiles to JavaScript, such as TypeScript. - Wikipedia

This library is a solution to such cases when official libraries are not working. And also an alternative for just creating, signing, and broadcasting transactions.

How Steem-tx works:

I'm preparing another post about this library. A full instruction on how to serialize and sign Steem transactions with JavaScript. It will take a few days to be ready.

Installation

npm install steem-tx --save

Usage

Create transaction:

const steemTx = require('steem-tx')
const operations = [
  [
    'vote',
    {
      voter: 'guest123',
      author: 'guest123',
      permlink: '20191107t125713486z-post',
      weight: 9900
    }
  ]
]

const tx = new steemTx.Transaction()
tx.create(operations).then(() => console.log(tx.transaction))

Sign transaction:

(multi signature is supported)

// please use this key just for testing purposes
const myKey = '5JRaypasxMx1L97ZUX7YuC5Psb5EAbF821kkAGtBj7xCJFQcbLg'
const privateKey = steemTx.PrivateKey.from(myKey)

tx.sign(privateKey)
console.log(tx.signedTransaction)

Broadcast transaction:

tx.broadcast().then(res => console.log(res))

Make node call:

steemTx.call('condenser_api.get_accounts', [['mahdiyari']]).then(res => console.log(res))

GitHub: https://github.com/mahdiyari/steem-tx-js
npm package: https://www.npmjs.com/package/steem-tx


Feel free to test, use, share!

Future plans?

I'm building different applications mainly for Steem blockchain and I will try to keep this library as light as possible but also, useful with main functions for interacting with Steem blockchain. I believe having more tools will help grow use cases of Steem blockchain.

Many features, like getting posts and accounts are easy to implement with basic api calls. But serializing and signing transactions are a little bit complex to be implemented. That's why I decided to prepare another post about it and explain as much as I can.

Let's hope and work for a better future for the people in the World and on the Steem blockchain ❤

And remember, you can vote for mahdiyari as a witness



0
0
0.000
57 comments
avatar

I love it! This looks great!

0
0
0.000
avatar

Right when I'm starting to look at developing an Android app. What timing!

0
0
0.000
avatar

looks helpful!

thanks for making & releasing this, it'll for sure be useful for lots of us :^)

0
0
0.000
avatar

can't even understand it, but still love it

0
0
0.000
avatar
(Edited)

WOW glad to se you getting upvotes from non bid bots . ocdb won! this is crazy cool to see developers getting funded this much at 15 cent steem! ,

i hope to see this formlized this into a develoepr wps, just for developers, i can use SQRL and get us a token and our own proposal system, like imagine , giuthub inside vessel wallet sort of thing :D ok man im so tired g2g but good job!

@mahdiyari id like to recruit you to work with telos community, not to take you away from steem just to enhance it... please come check out https://t.me/hellotelos id love to gfet your helpo with cross chain work, telos is a land of opportunity and IBC i can help steem with telos and this is great stuff i will send u 1 TLOSP right now with @banjo bot by inertia :0

0
0
0.000
avatar

Thank you
but, I usually work for myself

0
0
0.000
avatar

well thats what im talking about.... you would make your own proposals and get funding on telos...

0
0
0.000
avatar

Steem is the present and future of crypto and web3.0
$trdo

Posted using Partiko Android

0
0
0.000
avatar

Congratulations, this post is now Featured on steemit.com and was tweeted by @steemit to over 100,000 followers! Thanks for your valuable contribution to the Steem ecosystem!

0
0
0.000
avatar

very good poste and i would like to tell you that this information that you have shared with us is really important information and i hope you share this important things with regards to ''steem''

0
0
0.000
avatar

I'm planning to join dtube and I think it's an interesting app. There are particular tags where your videos can be shared with, I'm planning to add more of these tags in my videos and you can try it too, it will help your video to be generated with the right audience or people and it's going to be fun. Best of luck to you and me too.

0
0
0.000
avatar

Somewhat echoing the comments of @vandeberg, I'd love to see similar minimal yet complete Steem libraries for other popular languages.

0
0
0.000
avatar

wow, it's hot !

0
0
0.000
avatar
(Edited)

to ppl readin i havent tested it

but steem can use some interesting

he's also not my friend he downvoted me, but

saving the sinking ship is always a good idea if you wanna stay on it

its okay

my next target would be

"being able to downvote patrice IF I CHOSE TO DO SO "

we cool

0
0
0.000
avatar

Perfect, it looks great !!

0
0
0.000
avatar

Best post on the blockchain right now! This is where everybody with investment (SP) should upvote right now. This post will pillage all the small posts with under $10 payout, for even greater returns for all curators. Get your upvotes in now!! #NewSteem #HF21

0
0
0.000
avatar

@mahdiyari, These efforts are really appreciable. An Ecosystem which have diversified Alternatives performs very flexibly and developers like you definitely deserve appreciation and recognition.

Good wishes from my side and have a successful journey ahead. Stay blessed.

Posted using Partiko Android

0
0
0.000