What does WhaleVault do?
- Let's first answer this basic question - What does a WhaleVault do?
- WhaleVault holds your keys.
- Any dApps built on Blurt, sends request to WhaleVault for login (sign something)
- Any dApps built on Blurt, sends request to WhaleVault for broadcasting something e.g. Comment, Upvote, fund-transfer etc.
Why do We need Key-Manger-Server-Client?
- WhaleVault is limited to same system. What if you wish to login to other system without re-importing keys into different desktop?
- WhaleVault has to be on same browser.
- What happens to mobile users? How can they login?
- To answer all of these, we built key-manager-server-client.
KeyLess Clients, Wallet based Approvals
- Clients / dApps will never hold keys
- Server will only hold the data which needs to be signed / broadcasted
- Wallet will only scan, approve & broadcast transactions.
- With this approach, user can login to any system, using single wallet.
- User can keep keys on one mobile-device & scan QR codes to approve login & broadcast transactions.
- With this approach, user can login & logout with ease without moving keys from one desktop to other desktop.
Enough Talk. Give me the damn code
- Alright. Here is the source code
- https://github.com/sag333ar/key-manager-server-client
How does a login work?
- As shown in the screenshot above, dApp will show a text-field where user will enter username & hit login button.
- dApp will generate a QR code & show it to user.
- User will open Blurt-wallet app, scan QR code & approve login
- dApp will update the UX based on the status of the login-request
How does any other broadcast work?
- As showin in the screenshot above, dApp will prepare operations to broadcast & generate QR code accordingly.
- dApp will show the QR code to user.
- User will open Blurt-wallet app, scan QR code, approve & broadcast operations
- dApp will update the UX based on the status of the operations
Who can run key-manager-server?
- Literally any one
- Checkout the source code
- Run it with docker
- Setup NGINX
- Make it publicly available
How a dApp can point to any key-manager-server?
- It's a dApp-developer's responsibility to show a server chooser.
- I guess, we're already showing list of RPC nodes.
- Just like that, get a list of servers who are running the service & list them in the dApp
- User can choose any server from the list.
I don't understand a shit. WTF is this?
- Alright, I get it. It's little bit technical.
- How about a demo video?
- Check this demo video
- Those who aren't technical may not find it so exciting
- but those who are techincal, check it out & let me know what do you think.
What's is next?
- Source code is open-source.
- Those who have feedback, please feel free to raise issues
- Those who are technical, I request them to come forward, not only review code but alse raise pull request 🙏
Support me back
- Do you like the work I am doing?
- If yes, support me back by voting me as Blurt witness
- Please download the apps using the details provided below & share your feedback
Vote me as witness
Blurt Key-manager-server-client
Download Android App from Google Play Store.
Download PWA App on iOS or Android
- Just OPEN any of following url
- https://app.blurt.blog/#/
- https://pwa.blurt.blog/#/
- Add the bookmark on your home screen & you're set to use app.
Cheers
Have a good one
Excellent. I’m using Whalevault too. 🐳 🔐
Did you get chance to try this app - https://blurt-comments.web.app/?
Give it a go.
Re🤬eD
🥓
Yo @frankbacon
try this app - https://blurt-comments.web.app/
✌️
Nice dapp
Did you give it a try?
Nice...
Could you please givee some "howto Develop for blurt" resources?
Thank You
Open Gitlab & search for Blurt. You'll find most of the things overthere. I am just a mobile-app-front-end guy.
May be @tekraze, @saboin, @nalexadre can help.