A user asks for a new DPMI registration and the smart contract behind the scenes uses Chainlink's VRF for generating new UUIDs. This is important because if people can just enter any UUIDs, they can spam the system a lot causing trouble to legitimate users who will have existing identifiers resignified. The registration itself is an NFT that points to a JSON file with metadata. Currently the app uses Dublin Core as it seems to be the most prevalent in media conservation and library managment. The file is stored to IPFS via Moralis' SDK. After the initial registration is made, the user can list which other works his registration cites. This info is stored directly on the smart contract as it is faster than IPFS and can ensure that backlinks work. The point of this project is to provide a low cost alternative to systems like ISBN and ISSN. This helps people find documents that are relevant to them. For example: backlinks can help people find comentaries and responses to media works and thus improve learning.

DPMI showcase

How it's made

This project uses Chainlink's VFR for UUID generation so as to avoid spamming in the database. The code was developed for and tested on Polygon's network because L2 solutions are cheaper for the end user. Moralis provided boilerplate and the main JS library for interacting with the Web3.