Skip to content

dfstio/minanft-lib

Repository files navigation

Mina NFT nodejs library for TypeScript and JavaScript

The MinaNFT project is an innovative Non-Fungible Token (NFT) platform that integrates the unique privacy features of the Mina blockchain with advanced AI technology. It's designed to redefine the NFT space by offering a range of functionalities that go beyond traditional NFT capabilities.

This library is designed for easy integration of third-party developers and corporations with MinaNFT, allowing them to start minting NFTs, adding public and private keys, and verifying data off-chain and on-chain within one hour with easy and intuitive API

Features

NEW: Rollup NFTs

Running tests: yarn rollup

Rollup NFT example: https://minanft.io/nft/ibafkreifof56ydwhqhvz744czppjljzcpcvabscuu2ofylemzvzferlvlka

Rollup NFT URI example: https://gateway.pinata.cloud/ipfs/bafkreifof56ydwhqhvz744czppjljzcpcvabscuu2ofylemzvzferlvlka

Contracts

Data that can be put into NFT

  • Keys and Values: strings up to 30 characters and Fields, written as Fields
  • Texts: texts of any length, written as Field arrays
  • Files: text, image, word, any other formats, including audio, video, PDF, binary. Written as two Merkle Trees: one with metadata and the other with file data: 30 bytes per Field for binary files, one character per Field for text files, and one pixel per Field for image files
  • Maps: any collection of the types above grouped together.
  • All the data can be marked as public or private

Proving and verifying the data

  • Proving and verifying key-value pairs
  • Proving and verifying the texts, including redacted
  • Proving and verifying the text and binary files as a whole file using SHA3-512
  • Proving and verifying the redacted text and word files (some characters can be redacted by using masks)
  • Proving and verifying the redacted PNG image files (some pixels can be redacted by using masks)

API

minanft TypeScript/JavaScript library

  • TypeScript wrappers for contracts:
  • api class for API calls
  • IPFS for IPFS off-chain storage
  • ARWEAVE for Arweave off-chain storage
  • BackendPlugin for parallel calculations of the recursive proofs in the serverless backend

Installation

yarn add minanft

Documentation

https://docs.minanft.io

Website

https://minanft.io

Library on NPM

https://www.npmjs.com/package/minanft

Example

https://github.com/dfstio/minanft-lib-example

Faucet

https://faucet.minaprotocol.com