Conectando la blockchain con el navegador: Web3.js
Clase 14 de 15 • Curso de Prework para Desarrollo de Aplicaciones Blockchain 2021
Contenido del curso
Clase 14 de 15 • Curso de Prework para Desarrollo de Aplicaciones Blockchain 2021
Contenido del curso
Fernando López
Nicolás Felipe Fernandez Fandiño
Jean Nuñez
Wilson Jerez
Juan Christopher
Carolina Fernandez
Juan Christopher
Adolfo Sebastián Jara Gavilanes
Jhon Jaiver Supelano Rojas
Juan Christopher
Luis Alejandro Vera Hernandez
Juan Christopher
Jorge Fidel Zubieta Choque
Juan Christopher
Jimmy Buriticá Londoño
Juan Christopher
Daniel Jussef Zamorano Silva
Johan Muñoz
Manuel Parra
Pablo Andres Fernandez Cari
Daniel Quiaro
Pablo Campiño
Rob Arroyo
Rob Arroyo
RICARDO WILLIAM CABANILLAS CARDENAS
Ezequiel Savedra
Jesús Leon
Jesús alfaro
Daniel Jussef Zamorano Silva
Jorge Barrero
Dedison Stiven Peña Soto
Jeison Sneider Ruiz Zemanate
German Cavani
Juan Christopher
Jorge Fidel Zubieta Choque
Fernando Campos
Jorge Fidel Zubieta Choque
Heler Esneider Paez Correa
Elías Muñiz
Elías Muñiz
Elías Muñiz
Web3.js o Ethers.js?? estaría bueno una clase que explique las ventajas y desventajas de uno y del otro... últimamente se esta utilizando mucho ethers.js
De acuerdo totalmente
Para mi se ve mejor web3 porque este representa la web3.0 la nueva generacion de la web
web3.js -es una colección de librerías que te permite interactuar de manera local o remota con tu node de Ethereum ultilizando el protocolo HTTP, IPC o WebSocket -Desde RemixIDe se pueden encontrar los archivos de ejemplos de ejecución de web3.js
Buen resumen.
Instalar web3:
npm install web3
Contrato de prueba que se usa en Remix Ide:
// contracts/GLDToken.sol // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract GLDToken is ERC20 { constructor(uint256 initialSupply) ERC20("Gold", "GLD") { _mint(msg.sender, initialSupply); } }
Al compilar el contrato, recordar cambiar la versión del compilador de Remix a la 0.8.0 que es la que está usando el contrato de pruebas.
Buen aporte.
Gracias por el código
En Ganache también se puede realizar, solo deben configurar la red local en el metamask como nueva RPC personalizado
Nombre de la red Ganache Local Nueva dirección URL de RPC localhost:7545 Identificador de cadena * Este puede cambiar la cartera le da el ID correcto al ingresar los datos 1337 Símbolo de moneda ETH
Gracias!!
OpenZeppelin para encontrar tutoriales, documentación, ejemplos, estandares para desarrollar habilidades en generar los smart contracts
Es una super pagina que no conocia.
Moooi buen curso! para mpezar son esta nueva tecnologia Web3js!
Totalmente de acuerdo.
Web3.js
Web3.js es una colección de bibliotecas de JavaScript, que te permiten interactuar con un nodo de Ethereum local o remoto mediante HTTP, IPC o WebSocket.
Gracias.
Siempre con buenos aportes bro!
Al hacerle el deploy al contrato el profe no le puso ni el nombre ni el simbolo al token :c, f por el token
Podria ser token PLTZ y el nombre Platzi.. pero bueno
A mi no me aparece en ENVIRONMENT "Injected Web3" lo que hice fue conectar mi MetaMask de la siguente forma:
Saldo Insuficiente, este Metaverso es muuy parecido a la realidad :") .
Tampoco me funcionó las pruebas por medio de Ropsten debido a que las ETH para pruebas no fueron transferidas desde MetaMask faucet o de Ropsten faucet. Entonces utilice la red de Ethereum Rinkeby de [CHAINLINK FAUCETS] y me enviaron al exchange: x10 test LINK y los x0,1 test ETH.
¿La librería se instala en el proyecto, no? En la documentación así lo indica. No es una instalación global como lo sugiere el Profe.
Aportando a este mismo punto, al parecer la librería web3.js que se instaló localmente no se utilizó al final, ¿o sí? No queda claro cuál es la conexión entre la librería y lo que hace el profe en Remix, más allá de que elige conectar remix a la web3, lo cual se puede hacer sin instalarla localmente.
Hola, me sale que no tengo saldo para la operación en Metamask, al ser una red de prueba necesito ponerle fondos a la wallet o estoy haciendo algo mal?? Esta vez no encontre respuesta en los comentarios....
Hola que tal?, si tenes que tener fondos de prueba. tenes que poner la dire de tu metamask en el faucet de ropsten:
Y esperar a que te den fondos de prueba.. yo intente y aparentemente o tardan mucho o esta sin fondos de prueba la cuenta que reparte los eth.
protocolo JSON-RPC (protocolo Remote Procedure Call)
Siento la misma emoción que cuando me enamore de la programación por primera vez! Esta increíble esto!
Somos dos
x3
Códigos utilizados en esta clase:
//Ingresar a OpenZeppelin https://docs.openzeppelin.com/contracts/4.x/erc20
//ingresar a Remix IDE *Crear archivo EjemploERC20.sol
// contracts/GLDToken.sol // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract GLDToken is ERC20 { constructor(uint256 initialSupply) ERC20("Gold", "GLD") { _mint(msg.sender, initialSupply); } }
*Compilar
//Entrar a tu wallet de Metamask y a una cuenta de pruebas Raspten //Elegir Injected WEb3 en la opcion del deply de Remix IDE //Elegir cuenta de pruebas de Metamask
//Click en Deploy //Confirmar operación en Metamask
Les dejo el contrato que se usa como ejemplo 😀
// contracts/GLDToken.sol // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract GLDToken is ERC20 { constructor(uint256 initialSupply) ERC20("Gold", "GLD") { _mint(msg.sender, initialSupply); } }
Buen aporte.
no deberia haber creado el archivo dentro de la carpeta contracts?
Hola 👋🏼 Sí, para el ejemplo funciona ya que el archivo lo puedes crear en donde sea, pero por buenas prácticas si debe de ser dentro de cotracts. 🙂
Grcias por responder! PLatziSalu2!
¿En que directorio se agrega la librería de web3.js?
Usen sepolia como testnet. Si no la encuentran visible en metamask tienen que ir a la opción de show/hide test networks y ahí dar click para mostrar las testnets de ETH
Para obtener fondos en Sepolia usen alguna de sus faucets: https://sepolia-faucet.pk910.de/ https://faucet-sepolia.rockx.com/
El profesor está haciendo deploy a otro contrato por lo que veo y no al del ejemplo. En el del ejemplo tenés que ingresar un valor entero para hacer el deploy sino te va a marcar error