DEV Community

Sergio Martinez Marin
Sergio Martinez Marin

Posted on • Edited on

Primeros pasos con BNB Studio

Hola a todos, mirando este link https://www.bnbchain.org/en/developers
Asumiendo que es el punto de entrada para todos los desarrolladores de la BNB chain, me encontré con esto

bsc
Está un poco desactualizado, porque es la BNB studio ahora por el rebranding que hubo, pero vale la pena mirarlo que tan util es a la hora de realizar nuestros proyectos bajo la bnb chain.

let`s go builders 😎!!!

El bnb studio en un ide para desarrollar nuestros smartcontracts de la BNB chain, está desarrollado https://www.obsidians.io/.
Actualmente el BNB Studio viene en 2 formatos:

En el artículo vamos a instalar la versión de escritorio para Windows.
Antes de instalarlo, hay 2 alternativas de instalación.

  • Instalación de algunos elementos via docker, algo único que no he visto en otros ides , es la integración de containes para truffle y un nodo local de la bsc

  • Instalación de nodejs y eso es todo 👍

Nosotros para efectos prácticos lo vamos instalar con nodejs

1) Descargarmos e instalamos nodejs
https://nodejs.org/es/ descargamos la versión lts
hoy 16 de Agosto del 2022
https://nodejs.org/dist/v16.17.0/node-v16.17.0-x64.msi
2) Descargarmos e instalamos el Bnb Stucio
https://github.com/ObsidianLabs/BNB-Studio
La última versión fue lanzada en mayo 14 de 2022
https://github.com/ObsidianLabs/BNB-Studio/releases/tag/v0.10.6
https://github.com/ObsidianLabs/BNB-Studio/releases/download/v0.10.6/BNB-Studio-0.10.6.exe

BNB studio primera imagen
Como vamos a trabajar en la modalidad que está instalado en nodejs, click en skip

crear proyectos

Project templates

Tenemos varios templates y su las respectivas versiones para estos templates

versiones

Además de esto podemos ver si nos vamos por truffle, hardhat, waffle con sus respectivas versiones o la versión docker

Para efectos prácticos, vamos a hacer un hola mundo por hardhat y lo vamos a lanzar por la testnet de la bsc

hola mundo
Nota: la ultima versión para bnb studio de hardhat es la 2.5.0 y la última versión de hardhat va por la 2.11.2

Automáticamente , se instala hardhat para el proyecto
Nos queda instalado lo siguiente:

{
"name": "helloworld",
"version": "1.0.0",
"description": "",
"main": "hardhat.config.js",
"scripts": {
"build": "hardhat compile --config hardhat.config.js",
"deploy": "hardhat run scripts/deploy.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"@nomiclabs/hardhat-ethers": "^2.1.1",
"@nomiclabs/hardhat-waffle": "^2.0.3",
"chai": "^4.3.6",
"ethereum-waffle": "^3.4.4",
"ethers": "^5.7.1",
"hardhat": "^2.5.0"
}
}

Image description
Vamos a borrar el contrato generado, crear nuetro propio contrato "helloworld.sol y ponerlo en la testnet de la BSC! 🤠

Nuevo Contrato

`
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.8.6;

contract Hello {
function getResult() public view returns(string memory){
return "Hola Mundo!";
}
}
`
Abrimos el archivo config.json y cambiamos lo siguiente:
Main File: ./contracts/hellworld.sol
Solc version: v0.8.6
EVM version: Berlin

y click en save all

Image description

Dentro de la carpeta "scripts" en deploy.js hacemos la siguiente modificación y grabamos el cambio, de esta forma hardhat sabe que el contrato a desplegar es el que estamos elaborando.
const Main = await ethers.getContractFactory('Main')
se cambia por : const Main = await ethers.getContractFactory('Hello')

Image description
Ahora vamos a compilar el contrato con danco click en el ícono del martillo

Image description

Si todo es exitoso abajo aparece lo siguiente

Image description

Ahora vamos a desplegar el contrato en la testnet de la BSC 😉

1) en la parte superior derecha seleccionamos que es la red de pruebas

Image description
2) Vamos al administrador de llaves privadas en la parte inferior derecha y click en el ícono de llave

Image description

Una ves ingresamos en esta opción click en import
Image description

En este paso, ponemos la llave privada de la metamask, mucho cuidado, la llave privada no la debejmos compartir con nadie!
Image description
Debe quedar algo así ydamos click en close

Image description

3) Click en el ícono de la ballenita, para desplegar el contrato en la testnet de la BNB chain.

Image description
Click en Estimate & Deploy ( esto hace el cálculo del gas y gas price por nosotros)

Image description
Finalmente click en Deploy

Image description

Felicitaciones!!! ya desplegamos un contrato en la testnet de la BSC!!!

Image description

Ahora vamos a interactuar con el contrato 🧐

Hacemos click en el contratro generado

Image description
En este caso no tenemos parámetros, pero esta habilitado para ello en BNB Studio!
Vamos a ejecutar el contrato!!

Image description

Image description

Conlusiones

  • Nos facilita mucho la vida este entorno, ya que podemos compilar y hacer despliegues totalmente automatizados con un sólo click.
  • Muy interesante ver que podemos usar truffle o hardhat. Aunque un poco desactualizado en sus versiones
  • No lo mostramos pero tiene un explorador de transacciones incluido.
  • Para las personas que les gusta tener todo bajo control, quizá sea más aconsejable usar otro ide como visual studio e incorporar hardhat, truffle u otras soluciones completamente a mano, ya que BNB Studio , nos hace todas estas labores de forma automática y perdemos un poco el control sobre esto.

Espero este tutorial haya sido de agrado y utilidad 😉

Top comments (0)