What is the Bitshares BEET wallet?
The Bitshares BEET wallet is a multi-crypto wallet which supports multiple Bitshares based blockchains.
Third party applications can easily delegate blockchain operations and identity management to the BEET multiwallet, focusing entirely on the development of next generation Bitshares technologies!
What has been developed recently?
Check out the following pull requests:
- https://github.com/bitshares/beet/pull/247 - New upload json feature, fixes & optimizations
- https://github.com/bitshares/beet/pull/257 - Introducing the receipt functionality
- https://github.com/bitshares/beet/pull/254 - WIP: Reintroducing cryptocurrencies (needs testers)
Github issues addressed with the above pull requests:
- https://github.com/bitshares/beet/issues/246
- https://github.com/bitshares/beet/issues/248
- https://github.com/bitshares/beet/issues/255
- https://github.com/bitshares/beet/issues/252
- https://github.com/bitshares/beet/issues/256
- https://github.com/bitshares/beet/issues/253
- https://github.com/bitshares/beet/issues/196
Want a sneak peak at the new changes?
Multi-operation prompts (e.g. 300+ user nft airdrops) are now more optimized, much fewer API calls are made when fetching user & asset details.
The UX has also been changed so now rather than scrolling through text, you're shown paginated cards for each operation included in the transaction.
The prompt contents are now also fully localized, no longer solely in english!
There's now also an optional receipt added to injected call prompts. This receipt is shown to the user in its own popup window if successfully broadcast to the blockchain.
The receipt window provides the user additional information, including request/result JSON and the block details.
The language dropdown menu now uses localized names, as opposed to the english locale code (en -> english).
So, now let's check out the upload JSON functionality!
The local JSON file processing idea was implemented due to the max character length imposed on deeplinks, now users who cannot use the socket.io beet connect/link can now process large transactions which massively exceed this limit via this new local JSON file component!
The following prompts are from the airdrop tool, the user just needs to click 'local file':
The user follows the instructions, and generates the json file:
The user downloads the JSON file, then follows the provided instructions:
The generated airdrop.json file we downloaded will be uploaded into the Beet client:
{
"id": "46d48e4b-0f35-4ab5-ac1a-3d88eb7163e6",
"payload": {
"appName": "Transfer",
"browser": "airdrop_tool",
"chain": "BTS_TEST",
"method": "injectedCall",
"origin": "localhost",
"params": [
"signAndBroadcast",
"{\"ref_block_num\":0,\"ref_block_prefix\":0,\"expiration\":\"2023-07-08T21:40:41\",\"operations\":[[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.3833\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.29\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.23812\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25587\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.23173\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25594\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25597\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25634\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.680\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25645\",\"amount\":{\"amount\":\"1009091\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}],[0,{\"fee\":{\"amount\":\"86869\",\"asset_id\":\"1.3.0\"},\"from\":\"1.2.26299\",\"to\":\"1.2.25596\",\"amount\":{\"amount\":\"1009090\",\"asset_id\":\"1.3.0\"},\"extensions\":[]}]],\"extensions\":[],\"signatures\":[]}",
[]
]
},
"type": "api"
}
.
Now we've downloaded the transaction JSON file, let's upload it to beet:
The user provides the JSON file:
The uploaded JSON file is processed, and a prompt is created which prompts the user to complete the airdrop process:
Want to try out the Bitshares BEET multiwallet? Check it out: https://github.com/bitshares/beet/releases
Interested in the above new functionality? It's all open source, until the pull requests are merged and a new release is out you'll need to manually clone my local/receipt/crypto branches and run it locally yourself.
Are you a web3 bitshares developer? You should consider integrating your application with the Bitshares BEET multiwallet!
Check out the NFTEA Gallery!
Consider collecting an NFTEA NFT to support continued Bitshares developments.
Don't have a Bitshares account? Make one today!