Proposing a front-end agnostic way to store Bitcoin Lightning, crypto and social media addresses in a Hive profile

(edited)

I am currently building a new social media app for hive (@cyberspace77) and implemented Bitcoin Lightning tips in the app.

Instead of every app storing the preferred Bitcoin address of the user in their own variable or object, I propose a front-end agnostic way in doing that.

Adding a wallet object to the profile in

posting_json_metadata

like so

{"profile":{
...
"wallet":{"ln":"lightning address"}
...
}}

wallet is an object that can associate multiple cryptocurrencies to a hive user:

{"profile":{
...
"wallet":{"ln":"lightning@address","btc":"bc1...","eth":"0x..."}
...
}}

If we agree on this format, every existing and future dapp could use this setting, so the user can configure their addresses once for all apps and to save space on the blockchain.

Likewise the next idea is to also unify how we store external social media links on hive. One idea is to use a similar concept, a social object in profile, linking to the social media addresses of the user.

"social":{"x":"...","instagram":"...","discord":"",...}

What do you think about this?

@blocktrades @gtg @peakd @ecency @asgarth @good-karma @sagarkothari88 @tibfox @hivesuite.app @leofinance @threespeak @lordbutterfly @nftshowroom @crimsonclad @acidyo @roelandp @arcange @stoodkev @mahdiyari @deathwing @howo @brianoflondon

bitcoin-accepted-here-1.png

0.17908358 BEE
4 comments

Hi

We already have this in our mobile app and website:
Here is the format example, where type define if it is external chain or 2nd layer name, etc.:

{
  "profile": {
    "name": "...",
    "about": "...",
    "version": 2,
    "tokens": [
      {
        "symbol": "BTC",
        "type": "CHAIN",
        "meta": {
          "address": "1848UG3vGSaRP94NxdYtyCMbfsSJha48BC",
          "publicKey": "03e4928405fd277ac60b08b74783dcec1aeeb9505d75031484cab97b9982507fe9",
          "show": true
        }
      },
      {
        "symbol": "ETH",
        "type": "CHAIN",
        "meta": { "address": "0x436a...3da3", "publicKey": "0x0433...f6d0", "show": true }
      },
      { "symbol": "LEO", "type": "ENGINE", "meta": { "show": true } }
    ]
  }
}

profile.tokens in posting_json_metadata is an array of {symbol, type, meta} that lists a Hive user's linked wallets. Entries with type: "CHAIN" hold the user's public receive address on another blockchain (meta.address). Show an entry only when meta.show is not false.

0.01550030 BEE

oh cool, looks a bit complicated though, but more expandable, I was aiming for a simpler approach, just having the address association. Where do you use the tokens?

0.00000000 BEE

Tokens are transferable and manageable on Ecency.com

0.00000000 BEE

Didn‘t know you can tip Sats via @ecency. How does that work?

0.00000000 BEE

You can’t tip lightning sats, we have BTC and other chains tipping working with MetaMask extension on website. Mobile app shows your balances on those tokens, website allows you to transfer. Lightning network is not there yet. We haven’t seen much utility or usage to extend those areas…

0.00000000 BEE

Gold idea. One standard for all. Lightning tipps could be a real plus for Hive ecosystem. 👍🏻

0.01461280 BEE

Great proposal for standardizing wallet and social links on Hive!

0.00000000 BEE