Posts

Showing posts with the label #nodejs

Crypto-Currency "Coin Contract" Example

Image
So here is my starting point pragma solidity ^0.4.18; //Used like an Interface in C# or Java contract Token { function totalSupply() public constant returns (uint256 supply) {} function balanceOf(address _owner) public constant returns (uint256 balance) {} function transfer(address _to, uint256 _value) public returns (bool success) {} function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {} function approve(address _spender, uint256 _value) public returns (bool success) {} function allowance(address _owner, address _spender) public constant returns (uint256 remaining) {} //needed to Log the Events event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); } contract StandardToken is Token { mapping (address => uint256) balances; mapping (address => mapping (address => uint25...

Creating Decentralized Apps Part 2

In this post i will be using javascript to call a contract deployed using Remix IDE and ethereum-js Test RPC(nodeJs) The contract being deployed is pragma solidity ^0.4.0; contract NumberGetNextNumberAresh{ uint index; function getNumber() returns (uint) { index = index + 1; return index; } function myConstantMethod(string a) constant returns (string d) { return a; } function myConstantNumber() constant returns (uint) { return index; } } To get the ABI or  "Interface ABI"   Follow this POST for the "Contract Address" Follow this POST After Deploying you should now be ready to create a UI (interface with html) The html will contain javascript as well <html> <head> <title>Smart Contract Ethereum</title> </head> <body> <fieldset> <button onclick="send()">Send Data</button> <button onclick="...

Creating Decentralized Apps Part 1

Image
In order to create decentralized Apps such as Web applications, Websites, Mobile Apps. we need a way to interact with the blockchain. Solidity Language is merely for creating a programmable interface that runs on the blockchain So in order for us to interact with the Ethereum network (also called a node) we need to use a Client implementation.  There are many client implementations written in languages such as C++,Go,Python, Java,Haskell etc. Once you have a node using one of the clients, you can sync with the blockchain, create wallets and send and receive real ether. So there are 2 well known client implementations. 1. Test RPC - Node.js based Ethereum client for testing and development 2. Geth - Command line interface written in GO language for running a full Ethereum node Source: https://karl.tech/intro-guide-to-ethereum-testnets/ TestRPC is a lightweight Ethereum nodes used for small scale local testnets. Geth is heavyweight Ethereum nodes used for...