Creando movimiento NFT

Descripción general

Crear y administrar sus propios NFT utilizando el 0x1::simple_nftmódulo implica varios pasos, incluida la creación de una colección, la acuñación de NFT, la verificación de los NFT acuñados y la transferencia de NFT. Este tutorial lo guiará a través de estos pasos, enfocándose en la sintaxis y los comandos esenciales para interactuar con blockchain.

Tutorial

Paso 1: crear colección

Para acuñar NFT, primero debe crear una colección. Utilizará la 0x1::simple_nft::create_collectionfunción para este propósito. Esta función requiere numerosos parámetros, incluidas descripciones, suministro máximo, nombre de la colección y varios indicadores para permitir la mutabilidad en las propiedades de su colección.

public entry fun create_collection(
    creator: &signer,
    description: String,
    max_supply: Option<u64>,
    name: String,
    uri: String,
    mutable_description: bool,
    mutable_royalty: bool,
    mutable_uri: bool,
    mutable_nft_description: bool,
    mutable_nft_properties: bool,
    mutable_nft_uri: bool,
    royalty: Decimal128,
)

CLIinicia.js

> initiad tx move execute 0x1 simple_nft create_collection \ 
  --args "string:description option<u64>:100 string:my_collection string: bool:true bool:true bool:true bool:true bool:true bool:true decimal128:0.05" \
  --from [key-name] \
  --gas auto --gas-adjustment 1.5 --gas-prices 0.15uinit \
  --node [rpc-url]:[rpc-port] --chain-id [chain-id]

Paso 2: NFT perfecto

Después de crear una colección, puede crear NFT dentro de esta colección usando la 0x1::simple_nft::mintfunción. Esta función también requiere varios parámetros, incluido el nombre de la colección, una descripción del NFT, el ID del token y una dirección de destinatario opcional.

public entry fun mint(
    creator: &signer,
    collection: String,
    description: String,
    token_id: String,
    uri: String,
    property_keys: vector<String>,
    property_types: vector<String>,
    property_values: vector<vector<u8>>,
    to: Option<address>,
)

CLIinicia.js

> initiad tx move execute 0x1 simple_nft mint \
  --args "string:my_collection string:nft_description string:nft_1 string: vector<string>: vector<string>: vector<vector<u8>>: option<address>:[receiver-addr]" \
  --from [key-name] \
  --gas auto --gas-adjustment 1.5 --gas-prices 0.15uinit \
  --node [rpc-url]:[rpc-port] --chain-id [chain-id]

Paso 3: Verifique las NFT acuñadas

Puede comprobar los NFT que ha acuñado accediendo a API específicas. Para verificar colecciones y tokens que pertenecen a una dirección específica, use los siguientes puntos finales, reemplazando [addr]y [collection_address]con valores reales:

  • Colecciones propiedad de una dirección específica: https://api.initiation-1.initia.xyz/indexer/nft/v1/collections/by_account/[addr]

  • NFT propiedad de una dirección específica: https://api.initiation-1.initia.xyz/indexer/nft/v1/tokens/by_account/[addr]

Paso 4: transferir NFT

Para transferir un NFT, utilice la 0x1::object::transfer_callfunción. Esta función permite transferir un único NFT de una cuenta a otra.

public entry fun transfer_call(
    owner: &signer,
    object: address,
    to: address,
)

CLIinicia.js

> initiad tx move execute 0x1 object transfer_call \                                                                   
  --args "address:[object-addr] address:[receiver-addr]" \                                                  
  --from [key-name] \
  --gas auto --gas-adjustment 1.5 --gas-prices 0.15uinit \
  --node [rpc-url]:[rpc-port] --chain-id [chain-id]

Last updated