Adding a record
Notification of insertion after smart contract execution
Transaction on the blockchain
Integration with Skale/Remix
Does Google know more about us than we do? Is there is an alternative solution? Does fully decentralized access to the information make sense?
I have been looking all the weekend to have the possibility to search over the internet without the current close source and centralized search engine.
Today 90% of the searches are made with Google, and most of the other search engines are not open. Economic advantages using dominant position in the searches have been seen in the past and in some countries searches are limited by the government. It is quite difficult today to find anything on the web or dark web without using a centralized, closed source search engine. Open source/data search engine will not replace the big players but will be useful for some use case and need to be developed in order to preserve a natural opposition to main ones for freedom.
Using "proof of stack" for ranking result can be quite surprising but it is the best available today for a truly transparent and decentralized consensus. This first version is a bit limited and allows only the first 100 stacks to appears on a specific keyword, but we can envisage the next version with a cooperative stack where the nonprofit organization can be backed by the crowd.
Giving visibility for free (stacking is temporary, we can withdraw the stack at any moment) seems quite interesting. With the number of possible keywords avoiding a group taking control of the full network. It seems that this system can give quite cheap visibility for enterprises and give them the possibility to focus on their main business.
This naming system avoids any interest to resel names as a domain name and in this way the cybersquatting and give the possibility for the newcomers to start without the need to buy an expensive domain name.
It is still an early stage proof of concept but I like to explore more the possibilities of such model.
What it does
The blochain is used to maintain a qualified list of keywords associated with existing domains/web sites. On to of it a neutral distributed application is used to browse the result of the searches and add new records. There is no economic incentive for the developers. Money is spent only on the blockchain to register a new domain. All the stack associated with a keyword is temporary and can be withdrawn any time by the owner in exchange of the release of the keyword entry. Keyword entries are ranked by stack and reverse date within the blockchain but users are free to modify the order with other algorithms when they extract it.
Anybody can register keyword/host address and add a stack on top of it. Anybody can query for addresses associated with a keyword, results will be ordered by stack value. The application is open source and fully decentralized. For search result, it displays image title and description of the website getting the information in realtime scrolling the public header of the website within the search.
The app is up and running. It needs a wallet linked to the browser in order to run action over the blockchain and smart contract so it runs only on compatible browsers (Like firefox + Metamask).
How I built it
Challenges I ran into
Putting the Ethereum node online, making web3.js working, debugging my solidity code from nonexplicit errors. Hard time to be alone for a big project, but I got lots of technical help and brainstorming from mentors and other participants. I slept only 3 hours (Saturday 7am - 10 am) for the full weekend.
Accomplishments that I'm proud of
My first Dapp up and running on Ethereum test net.
What I learned
Ethereum / Solidity / web3.js
What's next for Blockchain Name System
Automatic addition of information, from existing database or lookup at the DNS usage to figure out interesting domain names. Adding the possibility for multi-stacking on the same record (Keyword / Domain) to give the possibility for the crowd to sustain nonprofit. Adding more protocols that can be linked to keywords.