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

in steem •  5 years ago  (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

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

I love how this is a minimal, yet complete, Javascript library for Steem. It is very similar to how I would design a Javascript library if we were to move away from steem-js and dsteem. Great job! I hope it gains traction.

  ·  5 years ago Reveal Comment

I love it! This looks great!

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

Posted using Partiko Android

Congratulations @pandaparker, you successfuly trended the post shared by @mahdiyari!
@mahdiyari will receive 0.15870938 TRDO & @pandaparker will get 0.10580625 TRDO curation in 3 Days from Post Created Date!

"Call TRDO, Your Comment Worth Something!"

To view or trade TRDO go to steem-engine.com
Join TRDO Discord Channel or Join TRDO Web Site

the code looks perfect to me

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

good stuff man

Neat :) @tipu curate

At the first look it seems pretty good! 💪

Bookmarking this for later! Thanks. !steem2email

Emailed 👌


Powered by witness untersatz!

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

looks helpful!

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

can't even understand it, but still love it

You have my witness vote too ;)
@untersatz curate 100

This post has been upvoted by witness @untersatz. You've done a great job!
The @untersatz witness and manual curation is under the guidance of @contrabourdon and @organduo.
Current VP: 88.39%

Thank you

Great job!!!!

looks great..... love it...😍

i love it.😍😍

Java!!!

Is there any example of sending a transaction (STEEM) to multiple people at once?

Put your transfers inside operations array in the first code snippet just like vote operation
also https://developers.steem.io/apidefinitions/broadcast-ops#broadcast_ops_transfer may help

Nice post man! :D

It is like

Amazing!! 🤪🤪

Thanks for the post.

Congratulations @mahdiyari, your post successfully recieved 0.15870938 TRDO from below listed TRENDO callers:

@pandaparker earned : 0.10580625 TRDO curation


To view or trade TRDO go to steem-engine.com
Join TRDO Discord Channel or Join TRDO Web Site

  ·  5 years ago (edited)

  ·  5 years ago (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

Thank you
but, I usually work for myself

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

Join Palnet, Neoxian, Steemleo, steempeak and other tags to earn tokens for your content! You could have earned a lot more with those tags if they were used at all. Anyways, those are just some ideas. Its nice to see that SteemIt had SMT's and we can earn different tokens now! Nice post btw, its 1 AM but it was still fun to read.

Posted using Partiko iOS

I search for wordpress installation singin/login function

Good writing.

Very good javacrib

wow, it's hot !

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!

Yes i do

@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

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

Thanks @mahdiyari for sharing this info!

Posted using Partiko Android

Perfect, it looks great !!

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

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.

c2b50a1990874427d40ded688bec40d4

  ·  5 years ago Reveal Comment

nice post

  ·  5 years ago Reveal Comment

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''

Hi

Posted using Partiko Android

please follow me

Posted using Partiko Android

it's cool

  ·  5 years ago Reveal Comment

Blockchain way