kauri

3 min read - Posted 20 Sep 18

MyENS Wallet

ENS enables human-readable domain names mapped to Ethereum addresses. And the MyENS Wallet app for iPhone lets you bid on and purchase ENS names and manage your ENS domains. Someday, everything will have an ENS address and this helps envision that future. Built with Web3Swift and Infura. - Hugh Lang (ECF)

article image ### Inspiration I got the idea to build this after I attempted to get my girlfriend to register an ENS domain name. Talk about a nightmare.

I realized that the current process is not very user friendly. Not only does one have to be familiar with general web 3 concepts, but the exisiting applications do not make it easy to register and manage names all in one cohesive location.

The main purpose of this application is to abstract all the technical jargon and make it easier for end users to interact with the ENS, similarly to a typical DNS provider like GoDaddy or NameCheap.

What it does

The app uses a web3 library written in Swift to perform calls to the Ethereum blockchain. It allows the user to send and recieve ether and ERC20 tokens, as well as registering and managing ENS domains all from within the app.

How I built it

First, I started drawing out sketches with some good old pen and paper. Then after some feedback and iterations, I made wireframes using Adobe XD.

Once I settled on the views and essential features, I began to code it up using Xcode.

Built with
  • Web3Swift
  • Infura
Challenges

Originally, I began to research exisiting web3 libraries written in Swift. After settling on Web3Swift, I started working on the Etherem wallet functionality.

After a full day of getting that to work, I noticed on the most recent WeekInEthereum post that there is a new web3 library with ENS support.

Dang-- too late!

Rather than reverting all of my work for the previous day, I stuck with the currently web3 library, although it is much more difficult to call contract functions.

After the hackathon, I will switch over to the newest web3 library to finish the ENS functions.

Future work and features

Some features that I'd like to include in the future:

  • Contact list: send ether directly to friends using their ENS names
  • Reminders for auctions: push notifications for bids and reveals
  • Mask the root wallet address with an ENS domain that you own
  • Multi-factor authentication
  • Trade and sell ENS names directly in the app
  • Back up and recover your private key using Keysplit ;)
  • Ability to export bids
Try It Out

GitHub Repo

Created with Sketch.Content is"CC-BY-SA 4.0" licensed
Article On-chain
Article Author
0 Comments
Related Articles
ENS: Beginner's Guide

ENS User experience is a key challenge when developing a dapp. Ethereum has complexities that should be hidden away to enable broad adoption. One such complexity, is an Ethereum address, it is long, unwieldy, and hard to remember. The Ethereum Name Service (ENS) is a useful tool for dapp developers. ENS is like DNS, in that it maps a memorable shortcut to an address. Using ENS we can map the friendly name ethereum.eth to the rather unfriendly 0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359. Subsequen

Claiming your DNS on ENS via Web (3/3: The code)

The Theory The Demo 3. The Code Previously In the second blog post, I showed you how the demo web app works. In this final blog post, I will explain how this demo code was built by assembling the multiple ENS related libraries. NOTE: The library API are evolving and it will more likely become out of date fairly quickly 3. The code Before diving into the code, let me quickly explain various components which this demo code uses. ENS = The main smart contract repository which contains various smart

makoto
Makoto Inoue

30 Oct 18