Decentralized data marketplace & oracle platform
11+ months 2000+ hours
- Blockchain: EOSJS, Solidity, Truffle, Web3JS, ZAPJS
- 1 PM
- 2 Front-end developers
- 1 Blockchain developer
Goals & Tasks
- Assist in developing a unique blockchain-based platform—decentralized data marketplace & oracle platform. Smartym Pro was chosen to expand the client’s internal team and work together in order to develop the platform with a range of additional tools for developers and users.
- Create a unique mass-market product, that will popularize the terms “Blockchain”, “Tokenized data” and “Oracles”;
- Create a decentralized marketplace, where developers can find credible sources of data for smart contracts;
- Build an environment for developing decentralized applications (Dapps);
- Provide a smooth and understandable flow for 3 types of potential users: providers, subscribers, and speculators;
- Analyze and investigate new techniques of creating oracles on blockchain, creating smart-contracts that are able to connect to off-chain data, protocols for data monetization and tokenization.
- Present a compact Chrome browser extension, that will contain the same functions as the Web Terminal;
- Develop a robust and “source agnostic” oracle platform on EOS and Ethereum using the customers’ API;
- Create 5 interconnected smart-contracts to enable secure and reliable transactions within the ecosystem;
- Present a convenient and scalable SDK for creating new oracles and curating the existing ones;
- Develop Web Terminal and Web Admin with oracle management tools, including parameterization of data tokens access-cost/access-supply curves;
Technologies & logic
The project has a high level of technical complexity. Smartym had to make a lot of research on rare technologies, that don’t have a lot of documentary description anywhere. The most difficult part for members of our development team was to understand the logic of the platform, the logic of users interaction, their interplay with smart contracts, oracles and the marketplace in general. The development on EOS, establishment, and differentiation of user rights and also key256 encryption—were the most convoluted things to work with. In the end, those challenges gave our team a pile of new useful experience that we will be able to apply in the future.
The idea of the project is global, it’s unusual and ambitious. It’s not just another web or blockchain app. It is a system that has everything to claim the title of the first analogous oracle platform. And this fact imposes a large amount of responsibility on our team because we are in charge of possibly a number one oracle platform and one of the most reliable worldwide decentralized data marketplaces.
The project is scalable and complex, it required precise and well-ordered project guidance. Throughout the whole development cycle, we’ve been constantly keeping in touch with the clients in order to let them know that all the key features are delivered on time. The 7-hour time zone difference didn’t lower the effectiveness and the frequency of communication.
Ethereum customizable smart-contracts
- Zap Registry — stores data providers’ data: public keys for data/query encryption, account addresses, pricing parameters, endpoint-specific parameters;
- Zap Bondage — executes the “bonding mechanism”: definition of available access-cost/access-supply curves, determined by the data-provider; calculation of the subscription prices for specific data-providers, referring to corresponding query cost; ZapBondage holds dots (1 dot = 1 query) in escrow between the provider and the subscriber throughout the process of subscription until the transaction takes place.
- Zap Dispatch — administers delivery and bond-market interface for long-term smart contract purposes. In this case, one dot equals one request;
- Zap Arbiter — handles delivery and bond-market interface for short-term subscriptions;
- Zap Token — holds the tokens, connects to providers’ data.
- Import data feeds into scripts;
- Develop endpoint-specific feed handlers;
- Write data-provider daemons;
- Operate wallets in scripts;
- Interact with “bonding” curves for data monetization and data speculation.
Terminal and Web Admin
- Give users an ability to manage oracles, create them, assign endpoints to them and set the initial oracle price that forms the access-cost/access-supply curves.
- Enables users to look through all the existent oracles on the platform, check their endpoints and so-called “bonding” curves.
- An additional compact and user friendly browser extension, that contains the same set of functionality as the Web Admin.
Smartym Pro is still actively working on the project, releasing new features and taking an active part in the platform’s expansion:
- We have finished the development of EOS admin platform. At the moment we are actively testing it via Jungle Testnet;
- Smartym Pro has developed BitUnits - a tool allowing real estate corporation "tokenize" their capital (i.e. buildings, residential complexes, etc.);
- The current platform's protocol is being constantly advanced.