Hardhat
Clase 13 de 15 • Curso de Prework para Desarrollo de Aplicaciones Blockchain 2021
Contenido del curso
Clase 13 de 15 • Curso de Prework para Desarrollo de Aplicaciones Blockchain 2021
Contenido del curso
Eloy Chávez Dev
Ernesto García
Agustin Moreno
Nicolás Felipe Fernandez Fandiño
Erik Estuardo Hernández López
Andres Menchaca
Andres Omar Carreon Diaz
Manuel Parra
Juan Christopher
Carolina Fernandez
Noé Lozano Mendoza
Carolina Fernandez
Luis Daniel Vieras
Juan Christopher
Diego Marquina
Jorge Fidel Zubieta Choque
Johan Marin
Art Michel
Miguel Guerrero
Liliana Camacho
jesus david marcano mora
Sebastián Rodrigo Chipana Huaylla
Pablo Andres Fernandez Cari
Rob Arroyo
Jimmy Buriticá Londoño
Jeison Sneider Ruiz Zemanate
Seba Amarante
Dany R
Alba Guzman
Nicolas Fabian Aloisio
Carlos Jose Ramirez Divo
Pablo Andres Fernandez Cari
Yosabeth Rodríguez Navas
José Manuel Piña Rodríguez
Maria Belen Vicente Sanchez
Piero Rolando
Marcos Tavio
Nathalia Barreiros
Sergio Arenas
𝔾𝕦𝕤 𝔾𝔾
Andrés Camilo Rozo Vanegas
Omar Daniel Centeno
Alexander Reyes
Los cursos que menciona al inicio son los que ya casi se estrenan.
👀👀👀
sufrooo jajaja falta banda para el 10 y 11 de noviembre
Hola, si también tuvieron este error
Error: Cannot find module '@nomiclabs/hardhat-waffle'
Lo soluciones instalando el paquete
npm i @nomiclabs/hardhat-waffle
y luego ya puedes ver las accounts y el resto.
probé de esa forma y me siguió dando error me puse a ver la documentación y tuve que agregar toda esta linea.
npm install --save-dev @nomiclabs/hardhat-waffle ethereum-waffle chai @nomiclabs/hardhat-ethers ethers
Por acá dejo el link de la documentación.
Sirvió! Gracias!!!
Personalmente me gusta mucho hardhat y lo he estado usando mas. Consejo para los que van empezando: denle sin miedo y si pueden metanse a hackathones en la plataforma devPost. Platzi es muuuuy bueno en sus cursos pero la experiencia de construir en un hackathon ayuda mucho a acelerar el proceso
Maravillosa jugada, y si.. tienes razon no hay nada como crear :) aun asi los fundamentos estan super buenos.
Buen aporte.
Hardhat nos ayuda en el desarrollo de forma local con Solidity.
Lo mejor de todo es que estarás desarrollando en una red de prueba llamada Hardhat Network basada en la red de Ethereum pero con algunas mejoras que te permitirán identificar errores en tus contratos inteligentes.
Los proyectos de Hardhat, son proyectos de NPM con el paquete Hardhat instalado que se ayuda de otros plugins para incrementar sus funcionalidades.
Instalación de ambiente de desarrollo
1.- Crear carpeta y entrar en ella:
$ mkdir hola-hardhat $ cd hola-hardhat
2.- Creando el proyecto en NPM (dar Enter a todas las preguntas para dejar por defecto):
$ npm init
3.- Instalando HardHat en el proyecto:
$ npm install --save-dev hardhat $ npx hardhat //Ejecutando hardhat
4.- Verás la información de bienvenida en la terminal y las opciones de crear un proyecto. Seleccionar "Create a basic sample project", esto nos creará un proyecto de pruebas con archivos básicos.
Para ver las direcciones de prueba con las que estaremos interactuando. Son sólo de prueba, no las utilices para recibir tokens verdaderos de mercado.
$ npx hardhat accounts
Para compilar el proyecto:
$ npx hardhat compile
Para desplegar el proyecto:
$ npx hardhat run scripts/sample-script.js
Al ejecutar esto debe aparecer el mensaje "Hello Hardhat!" lo que indicará que todo ha ido bien y veremos la dirección en la que se encuentra el contrato.
Justo estoy haciendo un Notion sobre el curso y no sabes como tu aporte cae como anillo al dedo. GRACIAS!
De nada :) me alegra te sirva
Truffle te crea un entorno un poco ++más amigable y más modesto de usar++, tiene un plus en su suite, y es** Drizzle** donde te proporciona una especie de plantillas para poder hacerle el FrontEnd a tu app con web3.js. Aunque, ha diferencia de Hardhat, es más robusto es más potente, tiene una red completa para poder testear, hacer deploys y corregir bugs. Las dos son buenas para desarrollar, incluyendo Remix, pero al momento de crear un proyecto más profesional, se usa Hardhat para poder tener la linea de herramientas que facilitarán el desarrollo de tus proyectos.
Buen aporte.
Truffle me pareció mas completo, y amigable por su interfaz grafica y cli.
PIENSO LO MISMO!
truffle es mas amigable pero hardhat es mas potente
El comando
npx hardhat accounts
ya no aparece en la nueva versión de Hardhat.
En cambio, pueden utilizar
npx hardhat node
que inicializa el nodo y muestra las Account con las Private Key.
Excelente aporte amigo
Gracias, tenía mucho tiempo revisando el error y era por este comando
Comandos de la clase
npm init npm install --save-dev hardhat npx hardhat >create a basic sample project code . npx hardhat accounts npx hardhat compile npx hardhat run scripts/sample-script.js
En esta versión las opciones de Hardhat han cambiado.
Elegí la primera opción y el código también cambio.
Mi duda es saber como ejecuto este nuevo código.
En esta version sample-script.js ya no está. En lugar de está deploy.js entonces mandamos a correr ese archivo:
En otro curso que tomé comentaban que Hardhat se usa más en entornos profesionales. En lo personal, me gusta que hardhat tiene todo lo que necesitamos para desarrollar. Sin embargo, me interesa saber más sobre herramientas para frontend como drizzle, de Truffle
Recuerda que el profesor dijo que hay dos cursos en donde se desarrolla un Market Place usando Hardhat y estos cursos son entre otras cosas de desarrollo Frontend.
Curso de Dapps: Introducción al Desarrollo de Aplicaciones Descentralizadas
Curso de Desarrollo Frontend de Aplicaciones Descentralizadas con Web3.Js
Comandos usas en esta clase:
--Seleccionar create a basic sample project
y
code . // abrir los archivos en visual studio code si lo tienes instalado
npx hardhat account //ver direcciones hardhat de prueba para probar contratos, enviar fondos, recibir fondos, etc.
npx hardhat compile
npx hardhat run scripts/sample-scripts-js 77 ejecutar script de prueba de nuestro contrato
estas herramientas servirian si quiero crear una dapp en otra red?
Tuve varios problemas, detallo como resolví algunos:
npm i @nomicfoundation/hardhat-toolbox
task("accounts", "Prints the list of accounts", async () => { const accounts = await ethers.getSigners(); for (const account of accounts) { console.log(account.address); } });
Luego de eso no deberían tener problema al usar el comando
npx hardhat accounts
Muchas gracias. Me has salvado 😁💚
Si han tenido problemas para el deploy de "Hello, hardhat!" Usar este comando:
$ node scripts/sample-script.js
Si les da el error Error HH303: Unrecognized task accounts, probablemente tengan instalada la version 2.9.9 o posterior de Hardhat.
.
Para ver las cuentas, se puede usar el comando npx hardhat node.
.
Por ejemplo:
$ npx hardhat --version 2.10.1 $ npx hardhat accounts Error HH303: Unrecognized task accounts For more info go to https://hardhat.org/HH303 or run Hardhat with --show-stack-traces $ npx hardhat node Started HTTP and WebSocket JSON-RPC server at https://127.0.0.1:8545/ Accounts ======== WARNING: These accounts, and their private keys, are publicly known. Any funds sent to them on Mainnet or any other live network WILL BE LOST. Account #0: 0xf39Fd6e51a...ffFb92266 (10000 ETH) Private Key: 0xac0974bec39a1...478cbed5efcae784d7bf4f2ff80 Account #1: 0x70997970C51812...b50e0d17dc79C8 (10000 ETH) Private Key: 0x59c6995e998f97a5a...9dc9e86dae88c7a8412f4603b6b78690d . . .
Referencia: "npx hardhat accounts" not available in Hardhat latest version 2.9.9 https://stackoverflow.com/questions/72943829/npx-hardhat-accounts-not-available-in-hardhat-latest-version-2-9-9
Muchas gracias!
Gracias!
También para los que tengan más conocimiento de Python que de Javascript pueden usar : Brownie Es similar a Truffle pero basado en python.
me aparece en siguiente error con npx hardhat accounts
abre la consola como administrador, y en vez de --save-dev intenta usar --global, me avisas como va
Me salio el siguiente error al usar npx hardhat accounts
Error: error:0308010C:digital envelope routines::unsupported ... { opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' }
Imagino que tienes la versión 17.x de Node, lo solucionas de dos maneras:
export NODE_OPTIONS=--openssl-legacy-providerTe dejo unos enlaces sobre las soluciones.
Hola chicos, siguiendo las instrucciones me sale lo siguiente npm WARN deprecated debug@3.2.6: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
mientras te deje trabajar no te preocupes demasiado por los WARNs, si te salen errores al momento de compilar compartelos con nosotros para intentar resolverlos. Saludos
Hola, pude ejecutar correctamente hasta desplegar el contrato en la red local, pero este mensaje salió siempre:
You are using a version of Node.js that is not supported by Hardhat, and it may work incorrectly, or not work at all. Please, upgrade your Node.js version.
En Ubuntu muestra que esta actualizada al día, ¿Que debería hacer? ¿Tendré problemas más adelante?
nodejs is already the newest version (10.19.0~dfsg-3ubuntu1).
Hola
Si todo salió bien no deberías de tener problemas. De todas formas te dejo la página de Hardhat donde hacen una compilación de errores frecuentes que te pueden guiar más adelante.
Saludos
Lo que ha de pasar es que tienen bastante tiempo que no actualizas tu Ubuntu, actualízalo y luego actualiza NPM y node.js después. Está buscando en repositorios atrasados.
Mira las formas de actualizarlo en este artículo