Última actualización de la página: nov. 12, 2019

Recursos para desarrolladores

Introducción

Si el desarrollo con Ethereum es nuevo para ti, estás en el lugar indicado. Estas guías escritas por la comunidad de Ethereum te presentarán lo básico del stack de Ethereum y los conceptos centrales que pueden ser distintos de cualquier otro desarrollo de apps que conozcas.

¿Necesitas una introducción más básica para empezar? Échale un vistazo a ethereum.org/es/learn.

Lenguajes para contratos inteligentes

Cualquier programa que se ejecuta en la Máquina Virtual de Ethereum (EVM) se conoce comúnmente como "contrato inteligente" o "smart contract". Los lenguajes más populares para escribir contratos inteligentes en Ethereum son Solidity y Vyper, aunque existen otros en desarrollo.

Vyper Lenguaje para Ethereum centrado en la seguridad, basado en Python.

¿Buscas otras opciones?

Herramientas de desarrollo

Ethereum tiene un gran y creciente número de herramientas para ayudar a los desarrolladores a construir, probar y desplegar sus aplicaciones. Abajo se encuentran las herramientas más populares para comenzar. Si quieres información más detallada, consulta esta lista exhaustiva.

Truffle * Entorno de desarrollo que incluye un framework para pruebas, pipeline de versiones y otras herramientas. *

Embark * Entorno de desarrollo que incluye un framework para pruebas e incluye otras herramientas integradas con Ethereum, IPFS y Whisper.*

Waffle * Framework para desarrollo y pruebas de contratos inteligentes avanzados (basado en Ethers.js).*

Etherlime Framework basado en Ethers.js para el desarrollo de dapps (Solidity y Vyper), despliegue, depuración, pruebas y mucho más.

Buidler Ejecutor de tareas para desarrolladores de contratos inteligentes de Ethereum

ZeppelinOS Framework de desarrollo para la construcción de contratos inteligentes modificables y su administración segura en aplicaciones.

¿Buscas otras opciones?

Entornos de desarrollo integrados (IDE)

Visual Studio Code IDE multiplataforma profesional con soporte oficial para Ethereum.

Remix IDE basado en la web con análisis estático integrado y una máquina virtual de blockchain para pruebas.

Superblocks IDE basado en la web con máquina virtual de blockchain de navegador integrada, integración con MetaMask, registro de transacciones y otras características.

EthFiddle IDE basado en la web que permite escribir, compilar y presentar contratos inteligentes.

¿Buscas otras opciones?

API frontend con Javascript

Web3.js API Javascript para Ethereum

Ethers.js Implementación completa para billeteras de Ethereum y utilidades en Javascript y TypeScript

light.js Una librería JS de alto nivel optimizada para clientes ligeros.

Web3-wrapper Una alternativa a Web3.js en Typescript

¿Buscas otras opciones?

API backend

Infura La API de Ethereum como servicio

Herramientas de seguridad

Slither Framework de análisis estático de Solidity escrito en Python 3

MythX API de análisis de seguridad para contratos inteligentes de Ethereum

Manticore Una interfaz de línea de comandos que utiliza una herramienta de ejecución simbólica en contratos inteligentes y binarios.

Securify Escáner de seguridad para contratos inteligentes de Ethereum

Más sobre verificación formal

¿Buscas otras opciones?

Herramientas de pruebas

Solidity-Coverage Herramienta alternativa de cobertura de código de Solidity.

hevm Implementación del EVM creada específicamente para pruebas unitarias y depuración de contratos inteligentes.

Whiteblock Genesis Una plataforma de desarrollo de extremo a extremo y pruebas para blockchain.

¿Buscas otras opciones?

Exploradores de bloques

Los exploradores de bloques son servicios que le permiten navegar por el blockchain de Ethereum (y sus redes de prueba). Para ellos, buscan información sobre transacciones específicas, bloques, contratos y otras actividades en la cadena.

Redes de prueba y grifos

La comunidad de Ethereum mantiene varias redes de prueba. Los desarrolladores las utilizan para probar sus aplicaciones bajo diferentes condiciones antes de publicarlas a la red principal de Ethereum.

Ropsten Blockchain de prueba de trabajo; se puede minar ether de prueba

Rinkeby Blockchain de prueba de autoridad; mantenido por el equipo de desarrollo de Geth

Goerli Blockchain de prueba de autoridad multicliente; construido y mantenido por la comunidad de Goerli

Clientes y cómo ejecutar tu propio nodo

La red de Ethereum está compuesta por muchos nodos, cada uno de los cuales ejecuta un cliente de software compatible. La mayoría de estos nodos ejecutan Geth o Parity, cada uno de los cuales puede configurarse de diferentes maneras de acuerdo con sus necesidades.

Geth Cliente de Ethereum escrito en Go

Parity Cliente de Ethereum escrito en Rust

Ethnode Ejecución de un nodo de Ethereum (Geth o Parity) en un entorno local.

Recursos sobre nodos de Ethereum

¿Buscas otras opciones?

Prácticas recomendadas, patrones y antipatrones

DappSys *Bloques de creación simples, flexibles y seguros para contratos inteligentes. *

OpenZeppelin Biblioteca para el desarrollo seguro de contratos inteligentes.

aragonOS *Patrones para la actualización y control de permisos. *

Registro de puntos débiles de los contratos inteligentes

Guía de prácticas recomendadas de seguridad para contratos inteligentes

¿Buscas otras opciones?

Soporte y formación para programadores

Ethereum Stackexchange

Sala de chat de Gitter sobre Solidity

Todas las salas de chat de Gitter sobre Ethereum

Cryptozombies Aprende a programar juegos en Ethereum.

Chainshot Tutoriales web de programación de dapp

Blockgeeks Cursos online sobre la tecnología blockchain

DappUniversity Aprende a construir aplicaciones decentralizadas en el blockchain de Ethereum.

Ethernaut Juego de guerra escrito en Solidity donde cada nivel es un contrato que hay que hackear

UI/UX

Estándares

La comunidad de Ethereum ha adoptado muchos estándares que son útiles para los desarrolladores. Normalmente se presentan como Propuestas de mejora de Ethereum (EIP por sus siglas en inglés), que son discutidas por miembros de la comunidad a través de un proceso estándar .

Algunos EIP hacen referencia a estándares de nivel aplicación (por ejemplo, un estándar sobre el formato de un contrato inteligente), los cuales se presentan como Solicitudes de comentarios de Ethereum (ERC por sus siglas en inglés). Muchos ERC son estándares críticos utilizados ampliamente en todo el ecosistema de Ethereum.