Metadata standards are an important aspect of smart contract development, yet there is no easy way to use or design them.
Build an open-source library that allows anyone to search and build metadata standards.
This is the total amount allocated to Open Standards Library.
Vrooli is a no-code prototyping and automation platform built for Cardano. We aim to make smart contracts, APIs, data, interfaces, and standards interoperable and decentralized through the use of visual building blocks called routines. To increase the interoperability of routines, we want to develop a feature-packed standards library to streamline the discovery of standards and allow anyone to contribute their own.
For those unfamiliar with how metadata is used on Cardano, here is a brief explanation. Transactions follow the eUTXO model, where the inputs and outputs of each transaction are ADA or native assets. This alone is not very useful, so smart contracts have been introduced to create logic and digital agreements. But smart contracts are not always what we need either. Often you only need to add some additional information to a transaction - such as for supply chain management, ownership authentication, and regulation compliance. This is accomplished through the use of one or more metadata standards. The development of new metadata standards increases the utility of the entire ecosystem and unlocks exciting new possibilities for the future.
We propose a metadata standards library that is free, open-source, and simple to use. There will be advanced search features, a standard builder interface, a simple process to input your own data into standards, and an API.
Standards can be searched by their name, number (e.g. “721” is NFT), creator, category, keys, and more. While we’ll allow standards with the same number to be uploaded, the site will suggest unique numbers when new standards are created. By encouraging standards to have their own unique numbers, it will be easier for dApps to figure out what is contained in a transaction’s metadata.
The standard builder allows users to intuitively design standards from scratch or existing standards. You may add descriptions to keys, specify the data types of values, and add optional fields. You can preview how the standard will look to people filling it out, as well as its JSON representation. The JSON will highlight all variables and data types that contain additional information, and display the data when pressed. Standards will show their total views, score, stars, forks, and the estimated cost of adding it to a transaction (since transaction fees are determined by size).
When viewing a standard or running a routine, you will be able to fill in the standard using an auto-generated form. For example, a basic NFT standard will display text fields for the asset name and policy ID. The IPFS image field will display a drop zone component that accepts image files. Upon confirmation, the image will be uploaded to IPFS, and its hash stored in the standard. Later this year, we plan to start the development of smart contract execution directly from Vrooli, which means that standards and smart contracts on Vrooli will be powerful enough to replace standalone websites for many on-chain tasks. Further, since Vrooli allows for routines to be built from routines, your standards can easily be integrated into arbitrarily complex workflows and shared across all DAOs.
There will be an API to access the standards from your own application. This is useful for any application that wants to display information and resources about an asset’s metadata, without having to figure out that information themselves. The API will have a free tier with a generous allowance of calls (not sure exactly how many yet), and one or more paid tiers so we can pay for server costs. If that isn’t enough, you will also be able to download the entire library as a .csv file.
Developers currently face many hurdles when working with metadata standards. The best way to discover and create standards is through the Cardano Improvement Proposal (CIP) process. While this process leads to reliable standards, it is not useful for sharing and receiving feedback on rough ideas or standards in early development.
Users should be able to upload standards for anyone to view and discuss, without having to write a formal proposal. The community should be able to give feedback and improve the standard over time. The more standards that developers can access, the easier it will be to conceptualize how they are designed. This saves a lot of time and mental effort, thus lowering the barrier of entry for smart contract development.
The main development risk this project faces is time. If the other proposals we submitted take more time to develop than expected, then this project may be delayed by a few weeks. Luckily all will be hosted on an existing website that has been designed to accommodate these features from the start, so there should be relatively few development hurdles.
The project will be hosted on the Vrooli application. All features will be available to everyone for free. The code is well-documented and has a GPL license. Vrooli is a Progressive Web Application (PWA), so it can be downloaded as a mobile app. It will have push notifications, a customizable appearance, wallet and email authentication, and all other features you’d expect from a modern app.
Timeline
Total: $14650
This project will be developed by Matt Halloran. You can find all of his contact links at https://matthalloran.info.
There will be proposals in the future to add additional functionality to Vrooli. For example, we plan to integrate DIDs for a reputation and certification system. This will increase safety and reliability. We also plan to add the ability to execute smart contracts directly from Vrooli. This will increase the utility of uploaded standards and make it possible to set up an intuitive web interface for executing your smart contracts - in just a few clicks.
Key Performance Indicators (KPIs) will be tracked automatically, and freely accessible in real-time. Our goals for this proposal are:
This builds off of the Fund6 proposal Community-Made Interactive Guides.
I'm a full-stack software developer with ten years of experience, and also a 1st cohort Plutus Pioneer.