¿Quieres desarrollar en Solidity? Aquí te dejo las herramientas que necesitarás

0 0


Si has llegado hasta aquí es porque quieres desarrollar Smart contracts o tienes una idea disruptiva para una Dapp. Aquí te daré una lista de las herramientas necesarias para desarrollar smart contracts.

Una primera aclaración. El sistema operativo que estoy usando es Ubuntu y los comandos expuestos son de este sistema operativo, aunque la mayoría de estas herramientas están disponibles para todos los sistemas operativos pueden surgir diferencias en su instalación.

Un prerrequisito es que tengas instalado Nodejs y npm:

$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash –

$ sudo apt-get install -y nodejs

$ npm install npm@latest -g

Con éstas podrás realizar pruebas en local de tu Dapp y el manejo de las dependencias de la misma.

Cliente Geth

Es de lo primero que debes instalar si no lo tienes instalado ya. Es un cliente de Ethereum y te servirá para realizar tus pruebas en las testnets como Ropsten y Rinkeby.

$ sudo apt-get install software-properties-common

$ sudo add-apt-repository -y ppa:ethereum/ethereum

$ sudo apt-get update

$ sudo apt-get install ethereum

Truffle

Es el framework de desarrollo más extendido. Te ayudará al manejo de tus contratos (compilación, migración, despliegue, etc) y paquetes. Además, con truffle podrás desarrollar test automáticos en Javascript que te ayudarán a comprobar rápidamente los cambios que hagas en tus contratos y asegurarte que funcionan como esperas. Dejo aquí el enlace:

https://www.trufflesuite.com/

Ganache y Ganache-cli

Herramientas fundamentales para el desarrollo y, sobre todo, para la realización de pruebas. Gracias a ellas podrás tener una blockchain en local en la cual podrás desplegar tus contratos como si lo estuvieras haciendo en una testnet o mainnet, pero con un significable ahorro de tiempo en tus pruebas. Además, te creará una serie de cuentas que podrás utilizar como si se trataran los usuarios de tu Dapp. Podrás descargarlo desde el siguiente enlace:

https://truffleframework.com/ganache

Metamask

Es una wallet de Ethereum integrada en tu navegador. Puedes instalarla en Chrome, Firefox, Opera y Brave. Con ella, además de ser una herramienta útil en tus desarrollos, podrás visitar y utilizar webs que se conecten con la red Ethereum. Se volverá una herramienta de especial utilidad cuando despliegues tus contratos en una blockchain, sea local o testnet, y quieras interactuar con tus contratos desde tu front-end, ya que con esta wallet te podrás conectar no solo a la mainnet y testnet, si no también, en tu blockchain local. Dejo aquí el enlace:

https://metamask.io/

Remix

Es un entorno de desarrollo para Solidity y Vyper. En mi opinión, es el más completo hasta la fecha. En él podrás, no sólo escribir tus Smart Contracts, si no también, podrás compilarlos, ver posibles errores, te dará advertencias de posibles desarrollos vulnerables, hacer pruebas de tu código, debuggearlo. Es una herramienta online a la que podrás acceder desde cualquier navegador. Dejo el enlace aquí:

https://remix.ethereum.org

Ethgasstation

Esta página web te servirá para consultar el precio del gas, lo cual lo hace una herramienta de cierta importancia para comprobar si tus funciones son caras o baratas de ejecutar. Dejo el enlace a continuación:

https://ethgasstation.info/

Etherscan

Es el explorador de bloques de Ethereum. Con él podrás ver las transacciones que se ejecutaron en la red. Además, podrás buscar direcciones, bloques, tokens, etc. Dejo a continuación los enlaces a la mainnet, Rinkeby y Ropsten:

https://etherscan.io/

https://rinkeby.etherscan.io/

https://ropsten.etherscan.io/

Además de las herramientas detalladas anteriormente, también necesitarás acceso a la documentación de las siguientes:

Web3.js

https://github.com/ethereum/wiki/wiki/JavaScript-API / https://web3js.readthedocs.io/en/1.0/web3-utils.html#towei

Ethjs

https://github.com/ethjs/ethjs

Librerías de Javascript que te permitirán conectar tu front-end con tus smart contracts.

Solidity

https://solidity.readthedocs.io/en/latest/index.html

Ya debería estar entre tus favoritos, es la documentación de Solidity.

OpenZeppelin

https://openzeppelin.org/

Fuente de librerías en Solidity muy útiles que te ayudarán a desarrollar Smart Contracts más seguros y resistentes a ataques, uno de sus ejemplos más famosos es SafeMath.

You might also like
WhatsApp chat