Creación de una interfaz de usuario basada en web para contratos inteligentes

Estoy luchando por obtener un tutorial sobre cómo crear una interfaz de usuario basada en web para interactuar con un contrato inteligente. Encontré ejemplos sobre el uso de web3 pero usa localhost:8545. Sin embargo, tengo entendido que la interfaz de usuario basada en la web o la aplicación móvil se ejecutarán en algún servidor y el contrato inteligente será remoto. ¿Cómo construyo una interfaz de usuario basada en web para:

  1. depósito/transferencia de éter y
  2. interactuar con contrato inteligente

Agradecería claridad y sugerencias/ejemplos para hacer que la aplicación móvil/UI funcione con Smartcontract

su host local: 8545 por defecto. Puede cambiarlo por --rpcaddr "dirección"

Respuestas (2)

Puede resolver su propósito utilizando el paquete 'web3' y 'solc' de npm (node.js). Puede saber más sobre ellos aquí:
https://www.npmjs.com/package/web3
https://www.npmjs.com/package/solc

Web3 lo ayuda a conectarse con un nodo ethereum y la implementación del contrato. Y solc se usa para compilar el contrato. Puede crear una interfaz de usuario (web/móvil) que utilizará algunas API escritas en node.js. Con estos dos paquetes, puede realizar una funcionalidad completa de desarrollo de contratos e interacción de contratos.
Para tener una mejor idea sobre las apis web3, lea esto:
https://github.com/ethereum/wiki/wiki/JavaScript-API

Después de revisar estos enlaces, si aún tiene alguna consulta, de nada.
He visto esto y usa localhost:8545. Esto funciona para el nodo privado local, pero cuando mi contrato inteligente se ejecuta en la red principal o en la red de prueba en la cadena de bloques de Ethereum, ¿qué debo poner como HttpProvider? web3 = nuevo Web3(nuevo Web3.providers.HttpProvider(" localhost:8545" ));
Puede definir la dirección rpc en el comando geth como "--rpcaddr 'HostAddress' --rpcport 'portno.'" o puede usar admin.startRPC (Host, Port). Y estos host reemplazarán al host local y el puerto reemplazará al 8545.

¡No eres el único! He estado luchando mucho también tratando de mejorar mis habilidades en el desarrollo front-end.

Como probablemente sepa, Mist usa un servidor Meteor para ejecutar las interfaces DAPP del lado del cliente Meteor. Así que actualmente estoy trabajando en los tutoriales de Meteor.

Para Meteor en general, el propio Fabian Vogelsteller de Ethereum 'escribió el libro' que recomiendo descargar de Amazon: Creación de aplicaciones web de una sola página con Meteor

Más específicamente, desea ver Dapp usando Meteor y sentirse cómodo con los diversos paquetes de Ethereum Meteor a los que se vincula, que incluyen estilos y herramientas estándar de Mist.

Actualmente estoy jugando con todo eso, pero todavía no tengo un front-end integrado funcional.