altShiftDev presents: MEOWnet
The MEOWnet allows dApps to interact directly with hardware wallets instead of using middleman software.
MEOWnet is a dApp API created using only HTML, CSS and Javascript, it allows users to directly connect to dApps with their hardware wallets — no Scatter needed — and it’s going to change everything.
Hardware wallets don’t need extra software to protect them online, their devices already do that. Cutting out the middleman means faster & more secure access to your favorite dApps. All you need is the Chrome browser and a hardware wallet, like a Ledger Nano S.
Currently MEOW stands alone as the only site on the internet that lets hardware wallet users interact directly with the EOS blockchain. Everyone else uses Scatter.
Part of the reason for that is developing a website which can talk to a physical device isn’t an easy thing to do, in fact making a website that interacts with the EOS blockchain is not really that easy either, combine the two and you have quite a challenge.
The MEOWnet solves both issues by allowing users to log into dApps simply by plugging in their device and logging in with MEOW on supported sites.
dApp Support
EOS Authority’s voting page is the first site to feature the MEOWnet but it won’t be the last, I’ve been working with the Chintai development team & EOS42 closely to finally bring token leasing to Ledger Nano S users!
How does it work?
The magic of the MEOWnet can be broken down into two main components…
Login with MEOW
The login component was created to let dApps keep their current structure e.g. “Login with Scatter” but provide a faster alternative to those with hardware wallets.
You have two ways to log in:
- With one click MEOW can scan your device for accounts automagically.
- Advanced users can specify a derivation path to an account.
Once logged in, MEOW transmits your EOS account details to the dApp just like Scatter.
eContracts
The second component of the MEOWnet is the eContracts, a new concept that’s never been done before on any blockchain.
eContracts were born from simple idea, to do any transaction on a blockchain you need to sign it digitally… But why not sign it literally too?
I’m transferring _____ EOS to account ______ with memo: ________
x _________ ← (Sign Here)
Voila, the Transfer eContract was born. You may notice it’s divided into multiple sections…
The Anatomy of an eContract
The Header
The header identifies the eContract and provides info about the current costs of the resource you’re buying — in this case, the price of EOS.
Available vs Projected Helper & Status Indicators
The left side is reserved for your “before” or available balance and the right for your projected balance after this transaction.
Since this section is only useful up until the clicks “Sign with Ledger”, it gets recycled into a status indicator for the transaction process.
If an error does happen, you can see exactly at what point things failed along with a user friendly error message or in the case of a success, a Transaction ID.
The Contract Itself
Merging the required fields for a transaction into a single sentence truly gives the feeling of a real document and improves usability.
To further reinforce the concept, the digital signature of the hardware wallet is followed by a visual one, with user’s own account name.
The Footer
Here we find a final helper message which compiles the final cost of the transaction into a very clear and concise statement.
How does it work?
On the technical side, I’ve created a dApp API using only HTML, CSS and Javascript that allows developers to offload the entire burden of working with hardware wallets and the EOS network to MEOW.
On the client side, it’s just magic.
It logs you in, builds the transactions, signs it, sends it to the EOS blockchain and finally sends the dApp the transaction ID and a thumbs up.
The MEOWnet will support & interact with all known EOS hardware wallets and it already works with popular sister-chains such as Telos, Worbli, BOS, Jungle, CryptoKylin, etc…
Integrate your dApp with the MEOWnet
Integration is extremely easy and can be done in minutes. Once I finalize the missing eContracts (staking, producer voting & Chintai) I’ll be able to improve the developer documentation. For now you can view it here: https://jsfiddle.net/user/altShiftDev/fiddles
MEOW now has a telegram channel! If you have any question come join us and ask for help. Also, if you have a dApp that needs a special transaction structure or you want a customized eContract, find me on telegram and let’s chat.
MEOW Telegram: https://t.me/meow_eos
MEOW is 100% funded by donations from the community, if you’d like to support the site or my work donations to account meow.x are welcome.
altShiftDev is the creator of My EOS Wallet (MEOW), a community owned and ad-free wallet and EOS account viewer on the web. It allows the EOS community to access and manage their EOS accounts with the trusted security of hardware wallets.