Módulo Sui

🚀 Su primer módulo Sui en M2 usando Movement CLI

Instalar la CLI de movimiento

Copiar

bash <(curl -fsSL https://raw.githubusercontent.com/movemntdev/M1/main/scripts/install.sh) --latest

Inicializa tu entorno

Ahora puedes crear un nuevo proyecto sui move con el siguiente comando:

Copiar

movement sui move new hello_world

Esto le dará una carpeta para acceder a:

Copiar

cd hello_world

Ábrelo en tu editor favorito:

Copiar

code .

Crea tu archivo de movimiento:

Copiar

touch sources/hello_world.move

Ahora tienes la siguiente estructura de carpetas:

Copiar

/ sources
    hello_world.move
Move.toml

Dentro hello_world.movepuedes pegar el siguiente código:

Copiar

#[lint_allow(self_transfer)]

module hello_world::hello_world {

    use std::string;
    use sui::object::{Self, UID};
    use sui::transfer;
    use sui::tx_context::{Self, TxContext};

    struct HelloWorldObject has key, store {
        id: UID,
        text: string::String
    }

    public fun mint(ctx: &mut TxContext) {
        let object = HelloWorldObject {
            id: object::new(ctx),
            text: string::utf8(b"Hello World!")
        };
        transfer::public_transfer(object, tx_context::sender(ctx));
    }

}

Después de construir su proyecto, puede implementarlo en la red de prueba M2:

Copiar

movement sui client publish --gas-budget 20000000

El ID del objeto en la Published Objectssección es el ID de su módulo. Ahora puedes llamar a la mintfunción en tu módulo con ese ID de objeto:

Copiar

movement sui client call --function mint --module hello_world --package <package object ID> --gas-budget 10000000

¡No olvide reemplazarlo <package object ID>con el ID de objeto de su módulo de la salida anterior de la consola!

¡Felicidades! ¡Acaba de escribir, publicar y ejecutar su primer módulo SuiMove en testnet!

Last updated