How to search the decentralized web with Weipoint
It’s been three weeks since we launched Weipoint, our search engine for the decentralized web. After our introductory post, we wanted to take a deeper dive into some of the features Weipoint currently offers. Read on to see how you can use Weipoint to find and interact with Ethereum smart contracts, view token balances, and even register your own ENS subdomain in less than a minute.
Search Ethereum Contracts
Contracts are decentralized programs which run and keep state on the Ethereum blockchain. They are the backbone of decentralized apps.
Weipoint allows you to search for contracts by name or relevant tags. For example you could search “token” to find new tokens, “golem” to quickly find the Golem project’s contracts, or “game” if you’re looking for some new decentralized fun. Weipoint orders search results by relevance and importance, so the first results should be the most useful. Click on results to see more about them. If you’re not sure what you’re looking for, try some of the autocomplete suggestions, or just browse all contracts sorted by importance. You can also search a specific address to navigate right to a contract.
Search ENS Domains
ENS is a domain service which gives human readable names to decentralized content. With it you you could use website.eth instead of 0x209c4784a…fc18ef.
You can search for .eth domains directly on the search bar. Weipoint will display information about that domain such as the owner, if it is available for purchase, and most importantly the contract or account it resolves to. We’ll be adding support for domains that resolve to Swarm/IPFS (decentralized file stores) soon.
View Token Balances
Tokens are currencies that exist on top of Ethereum, and are used for funding and interacting with many DApps.
If you search for a non-contract account, you can see a list of balances for all tokens (including ETH) that account owns. Weipoint automatically discovers tokens on the blockchain, so more will continue to be added in the future as well. If you use Metamask or Mist you can quickly get to your account via the icon at the top right of the site.
Read and Interact with Ethereum Contracts
Users can interact with contracts by sending transactions on the blockchain.
On the contract page, you can view Solidity source code for contracts. Weipoint verifies that the provided source code matches contract bytecode on the blockchain. You can also see all public data a contract defines on the “Read Contract” section.
The “Interact” tab lets you easily send transactions directly to the contract on the blockchain. You could use this to transfer tokens, manage ENS domains, or anything else you could do with a contract. You’ll need a wallet such as Metamask or Mist in order to use this feature, as sending transactions requires ether to be sent as a fee (to miners). Weipoint never controls any funds, but rather just prepares the unsigned transaction which is then sent to your wallet for you to approve. Note: Use this feature at your own risk. You could lose funds if you send an invalid transaction
One cool example use case for this is registering an ENS subdomain via this simple registrar contract. Go to the “Interact” tab and click on the “register” function. Put in the subdomain you want, and a price you’re willing to pay, and click call. After your transaction is approved and mined (probably less than a minute) your subdomain should be registered and pointing to your wallet! Go to weipoint.com/domain/<yourdomain>.gimmethe.eth to check it out. Afterwards anyone can send you funds at yourdomain.gimmethe.eth.
Verify Contract Code
Contracts exist on the blockchain only as unreadable bytecode. Developers need to supply the source code for these contracts so others can see what the contract does.
If you’re developing a new smart contract and you want others to use it, they need to be able to verify the contract does what you claim. A good way to do this is to upload the source code to a public site like Weipoint. If you go to a contract that does not have source code uploaded yet, you’ll see the “Upload Source” tab where you can upload your contract’s source code. You’ll also need to supply the Solidity version you used to compile your contract as well as if you used compiler optimization. Once your contract is verified, everyone will be able to view your source code on Weipoint and also read and interact with your contract as described in the previous section. Contracts with verified code appear higher in search results and are more likely to be visited by users, so it can be a good way to start acquiring users for your DApp.
Add Metadata to Contracts
Metadata makes content discoverable on Weipoint
Weipoint currently uses metadata such as tags, contract name, description, and a web links to make contracts searchable. This metadata is supplied by users as well as by us here at Weipoint. Anyone can suggest additional metadata for any contract (click the + buttons to change link/description). For now this metadata is manually reviewed by us to combat spam, but we’re working on a more decentralized solution for the future. If you’re a DApp creator, adding additional metadata can be a good way to help users find and start using your DApp.
Head on over to weipoint.com to check it all out! We’re moving fast, so will continue to improve and add more features in the near future. If you’re interested in learning more, please reach out to me at email@example.com. We’re always looking for talented individuals to join the team.