Creando tu primer Smart Contract con JavaScript en NEAR Protocol

Guía para principiantes.

NEAR_ES
7 min readApr 17, 2024

Autor: América Castro Publicado 24 de Abril de 2024

En el vasto y dinámico panorama de la tecnología blockchain, NEAR Protocol emerge como una opción destacada, ofreciendo una experiencia de usuario amigable y una solución innovadora para el desarrollo de aplicaciones descentralizadas (DApps). Pero, ¿qué es exactamente NEAR Protocol y por qué es relevante para el mundo de los smart contracts?

NEAR es una blockchain diseñada desde cero para ser eficiente, segura y escalable de manera infinita. En términos técnicos, NEAR es una blockchain de capa uno, fragmentada y basada en la prueba de participación o (PoS), construida con la usabilidad como prioridad principal.

¿Por qué elegir NEAR?

NEAR es un verdadero prodigio técnico, ofreciendo características integradas como cuentas nombres simples de recordar y abstracción de cuentas. Para los desarrolladores, NEAR proporciona toda la infraestructura necesaria para sus aplicaciones, desde smart contracts hasta indexadores, todo ello manteniendo la interoperabilidad con otras cadenas.

Ahora, en el contexto de la importancia de aprender a crear smart contracts, es esencial comprender cómo NEAR Protocol facilita este proceso. Los smart contracts son la columna vertebral de las aplicaciones descentralizadas, permitiendo la ejecución automática de acuerdos sin la necesidad de intermediarios. A medida que el ecosistema blockchain continúa expandiéndose, la capacidad de desarrollar y desplegar smart contracts se vuelve cada vez más crucial para aquellos que buscan construir DApps innovadoras y disruptivas.

En este artículo, exploraremos paso a paso cómo crear tu primer smart contract utilizando JavaScript en NEAR Protocol, aprovechando las características y la infraestructura proporcionada por esta emocionante plataforma blockchain.

Previamente hemos desarrollado el concepto de smart contract, a modo de recordatorio te lo traemos de forma concisa:

¿Qué es un Smart Contract?

En el contexto de NEAR Protocol, los smart contracts son piezas de código ejecutable que residen en una cuenta de NEAR. Estos contratos inteligentes tienen la capacidad de almacenar datos, realizar transacciones en nombre de la cuenta y exponer métodos para que otras cuentas puedan interactuar con ellos.

Primeros pasos para crear un Smart Contract usando JavaScript

Preparación del Entorno de Desarrollo:

Antes de sumergirnos en la creación de nuestro primer smart contract en NEAR Protocol, es crucial preparar nuestro entorno de desarrollo para asegurarnos de tener todas las herramientas necesarias a nuestra disposición. Necesitamos Instalar:

  • Node.js
  • NEAR CLI

Aquí están los pasos clave que debemos seguir:

Instalación de NEAR CLI (Command Line Interface):

NEAR CLI es una interfaz de línea de comandos que nos permite interactuar con la red de NEAR y desplegar nuestros smart contracts. Para instalar NEAR CLI, necesitaremos tener Node.js instalado en nuestro sistema.

Podemos instalar Node.js desde su sitio web oficial:

(podrás instalar para diferentes sistemas operativos: Window, macOS y Linux)

Una vez que Node.js esté instalado, podemos instalar NEAR CLI globalmente utilizando npm (el administrador de paquetes de Node.js) con el siguiente comando en nuestro terminal:

npm install -g near-cli

Este comando instalará NEAR CLI de forma global en nuestro sistema, lo que nos permitirá acceder a sus comandos desde cualquier ubicación en nuestra terminal.

También puedes revisar las instrucciones de Instalación para Mac y Linux aquí y par Window aquí.

Configuración del Entorno de Desarrollo Local:

Después de instalar NEAR CLI, necesitaremos configurar nuestro entorno de desarrollo local para poder trabajar con NEAR Protocol de manera efectiva.

near login

Este comando nos solicitará que ingresemos nuestras credenciales de NEAR (ID de cuenta) y nos autenticará en nuestra cuenta de NEAR a través de NEAR CLI.

Asegúrate de haber creado una cuenta en NEAR si aún no lo has hecho, ya que necesitaremos nuestras credenciales para configurar nuestro entorno.

Para este proceso puedes crear una billetera Testnet (el entorno, viene en modo prueba por defecto. Cuando estés listo para crear un contrato público puedes cambiar al modo mainnet.)

https://testnet.mynearwallet.com/

Con NEAR CLI instalado puedes hacer algunas pruebas en NEAR CLI haciendo algunas llamadas como:

near login

Mirar el estado de una cuenta:

near state <example.testnet>

Con NEAR CLI instalado y nuestro entorno de desarrollo local configurado, estamos listos para empezar a desarrollar nuestro primer Smart Contract en NEAR Protocol. Estos pasos iniciales son fundamentales para establecer una base sólida antes de sumergirnos en la creación y despliegue de nuestros contratos inteligentes.

Creando un Smart Contract:

Una vez que hemos preparado nuestro entorno, podemos proceder a crear nuestro nuevo proyecto de smart contract en NEAR Protocol.

Aquí están los pasos para llevar a cabo esta tarea:

Uso de NEAR CLI para crear un nuevo proyecto de smart contract:

NEAR CLI nos proporciona una funcionalidad conveniente para generar un proyecto de smart contract listo para usar.

Crea un contrato inteligente ejecutando la herramienta de scaffolding (para usar plantilla preexistente)

Usamos NPX para ejecutar el paquete. ( npx permite a los desarrolladores ejecutar cualquier paquete Javascript disponible en el registro NPM sin ni siquiera instalarlo. NPX se instala automáticamente con NPM versión 5.2.0 y superiores.)

  npx create-near-app@latest

Sigue el menú interactivo: “What do you want to build?”

Selecciona una plantilla de contrato inteligente para tu proyecto JS/TS Contract: “A Near Smart Contract”

Nombra tu proyecto: Para esta prueba usamos el famoso ‘ hello-near.’

La estructura de carpetas resultante cambiará ligeramente en función del lenguaje elegido. Esta es la estructura que resulta de nuestra prueba:

Revisando el Contrato

Usaremos los comandos:

npm run build
npm run test

npm run build

Este comando utilizará NEAR CLI para compilar nuestro contrato inteligente, convirtiendo el código fuente en un formato ejecutable que puede ser desplegado en la red de NEAR.

Y prueba el contrato con este comando:

npm run test

Despliegue del Smart Contract:

Una vez que hemos desarrollado nuestro contrato inteligente gracias al template de: create-near-app y estamos satisfechos con su funcionalidad, el siguiente paso es desplegarlo en la red de prueba de NEAR. Para hacer esto, necesitamos ejecutar el siguiente comando en nuestra terminal:

near deploy — accountId tu-cuenta archivo del contrato <build/release/hello.wasm>

Cuando el despliegue se haya completado con éxito, nuestro contrato inteligente estará disponible para ser utilizado en la red de prueba de NEAR. Podremos interactuar con él utilizando NEAR CLI o integrándolo en nuestras aplicaciones y DApps de prueba.

Podemos ver la transacción del despliegue en https://testnet.nearblocks.io

https://testnet.nearblocks.io

Interactuando con el Smart Contract:

Ahora que nuestro contrato inteligente ha sido desplegado con éxito en la red de prueba de NEAR, es importante comprender cómo interactuar con él para aprovechar al máximo su funcionalidad.

Vamos a explorar dos formas comunes de interactuar con el contrato inteligente que usamos para nuestra prueba en NEAR Protocol:

Podemos llamar a sus métodos utilizando las herramientas near-cli o near-cli-rs. Estos son los comandos:

get_greeting

El método get_greeting es un método de vista, lo que significa que sólo lee el estado del contrato, y por lo tanto puede ser llamado gratuitamente.

set Greeting

El método set_greeting es un método de cambio, lo que significa que modifica el estado del contrato, y por lo tanto requiere que un usuario firme una transacción para ser ejecutado.

En esta guía, hemos recorrido los pasos clave para crear y desplegar tu primer smart contract utilizando JavaScript en NEAR Protocol.

El potencial de los smart contracts en NEAR Protocol es vasto y emocionante. Ellos no solo permiten la automatización de acuerdos y transacciones, sino que también abren la puerta a la creación de una amplia gama de aplicaciones descentralizadas innovadoras. Al seguir explorando y experimentando con smart contracts en NEAR Protocol, podemos:

  • Contribuir al crecimiento y desarrollo del ecosistema blockchain y de las aplicaciones descentralizadas.
  • Impulsar la adopción masiva de la tecnología blockchain al demostrar sus beneficios y casos de uso prácticos.
  • Innovar y crear soluciones que resuelvan problemas del mundo real de manera eficiente y transparente.

Recursos adicionales para continuar aprendiendo

Para aquellos que deseen profundizar en el desarrollo de smart contracts en NEAR Protocol, hay una serie de recursos adicionales disponibles:

https://nodejs.org/en/download

What is a Smart Contract? https://docs.near.org/build/smart-contracts/what-is

About JS SDK https://docs.near.org/sdk/js/introduction

Sigue las cuentas de Near Es en Español

X (Twitter) oficial de NEAR_ES

Canal YouTube: NEAR_ES

NEAR Social: NEAR_ES

Telegram oficial de NEAR_ES

--

--

NEAR_ES

Espacio informativo y educativo sobre NEAR Protocol, Aurora, web3 y blockchain en Español para toda la comunidad