Contenido del curso
Your first Sway project
Types and Standard Library
Writing your contract
- 8

Desarrollo de Contratos Inteligentes en Sway: Mercado Online Intermedio
16:08 min - 9

Implementación de funciones en contratos inteligentes Sway
09:49 min - 10

Implementación de la Función buyItem en Sway para Compra de Artículos
15:47 min - 11

Funciones de Propietario en Contratos Inteligentes Sway
09:06 min - 12

Función get_item en tu contrato Sway
02:20 min
Deploying your contract
Frontend
Cómo compilar y desplegar un contrato Sway
Resumen
Desplegar un smart contract en Fuel implica compilarlo con forc build, enviarlo a la testnet con forc deploy, firmar la transacción con tu wallet y verificar el resultado en el block explorer. Si estás aprendiendo desarrollo en Sway, dominar este flujo es lo que separa escribir código de tener un contrato vivo en blockchain.
¿Cómo compilar un smart contract con forc build?
Antes de desplegar nada, necesitas confirmar que tu contrato compila sin errores. Aquí es donde entra forc build, el comando que toma tu código Sway y lo convierte en bytecode listo para la blockchain.
Abre la terminal integrada de VS Code desde el menú Terminal y luego New Terminal. Verifica tu ubicación con ls para listar subdirectorios y muévete al directorio del contrato con cd sway-store-contract. Una vez dentro, ejecuta forc build.
Si todo sale bien, verás feedback en verde junto con el tamaño del bytecode. Si hay errores, aparecerán resaltados en rojo apuntando a la línea exacta del problema.
¿Qué hace forc build? Compila tu contrato Sway y genera el bytecode que se desplegará en la blockchain. Si hay errores de sintaxis o tipos, los muestra antes de intentar deployar.
¿Cómo desplegar el contrato en la testnet de Fuel?
El comando para desplegar es forc deploy --url seguido del endpoint de la testnet activa. En la clase se usa beta-2, pero ten en cuenta que para cuando estés viendo esto puede haber una testnet más reciente con mejores features.
No necesitas memorizar los flags. Como cualquier dev, copia y pega desde la documentación oficial. Al ejecutar el comando ocurren varios pasos:
- Se compila el contrato y se genera un contract ID.
- La terminal te pide la dirección de la wallet con la que vas a firmar.
- Recibes un transaction ID que debes firmar aparte.
- Pegas la firma de regreso para completar el despliegue.
Abre una segunda terminal en paralelo. Vas a hacer ping pong entre ambas para firmar la transacción.
¿Cómo obtengo mi dirección de wallet para firmar?
En la segunda terminal corre forc wallet list y se imprimirán todas tus direcciones. Si tienes más de una, puedes elegir cualquiera siempre que tenga test tokens disponibles. Copia la dirección y pégala en la terminal donde se está ejecutando el deploy.
¿Cómo conseguir test tokens desde el faucet de Fuel?
Desplegar consume test tokens. Cuando creas tu wallet por primera vez recibes algunos, pero al hacer múltiples despliegues se acaban y tienes que recargar desde el faucet.
Navega a faucet-beta-2.fuel.network, pega tu dirección de wallet, marca el captcha de no soy un robot y dale clic al botón Give me ether. En segundos el navegador confirma que el test ether fue enviado a tu wallet.
¿Para qué sirven los test tokens? Son tokens sin valor real que cubren el gas de tus transacciones en la testnet. Sin ellos no puedes deployar ni interactuar con contratos.
Regresa a VS Code con tu wallet ya fondeada y continúa el flujo de despliegue.
¿Cómo firmar la transacción con forc wallet sign?
Después de pasar tu dirección de wallet al comando de deploy, la terminal te entrega un transaction ID. Cópialo y ve a la segunda terminal para firmarlo.
El comando correcto es:
forc wallet sign --id <transaction-id> --account-index 0
Si corres el comando con flags incorrectos, la terminal te muestra el uso correcto en el mensaje de error. No tienes que memorizar nada, solo leer lo que el CLI te dice.
Al ejecutarlo, te pide una contraseña para encriptar tu private key. La confirmas y se genera la firma. Cópiala completa, prestando atención al último carácter porque suele cortarse y romper el flujo.
Pega la firma en la terminal del deploy y presiona Enter. Verás el mensaje confirmando que tu contrato fue desplegado en un número de bloque específico.
¿Cómo verifico mi contrato en el block explorer?
Una vez desplegado, puedes ver tu contrato en vivo usando el block explorer de Fuel. Toma el transaction ID que usaste para generar la firma y prepénde 0x antes de pegarlo en el explorer.
Sin el 0x el explorer responde con un mensaje de que el texto no es una transaction ID o dirección válida. Con el prefijo correcto, presionas Enter y aparece la información completa:
- Tipo de transacción: create.
- Estado: successful.
- Gas price y gas limit.
- Confirmación de que tu contrato fue creado.
¿Qué es el block explorer? Es una interfaz web que te permite consultar transacciones, contratos y bloques de la blockchain en tiempo real usando el ID o dirección.
¿Qué sigue después de desplegar el contrato?
Ya tienes el contrato compilado, deployado y verificado en el explorer. El siguiente paso es construir un front end que permita interactuar con esos métodos directamente desde el navegador, usando el TypeScript SDK de Fuel.
Déjame en los comentarios el transaction hash de tu contrato desplegado para revisar tu trabajo.