Truffle
Installing
In order to use Truffle, we just need one command to install Truffle.
$ npm install -g truffle
You can confirm the installed truffle's version by typing truffle version
on a terminal.
Create a Project
The first step is to create a project using Truffle. Let's create a project called "MetaCCN".
Create a new directory for your Truffle project and initialize it.
$ mkdir MetaCCN
$ cd MetaCCN
$ truffle init
Once this operation is completed, you'll now have a project structure with the following items.
contracts/: Directory for Solidity contracts
migrations/: Directory for scriptable deployment files
test/: Directory for test files for testing your application and contracts
truffle-config.js: Truffle configuration file
Create Your Contract
You can write your own smart contract in contracts/ directory.
Compile Contract
To compile a Truffle project, change to the root of the directory where the project is located and then type the following into a terminal.
$ truffle compile
Config Truffle for Mainnet
truffle-config.js
const HDWalletProvider = require('@truffle/hdwallet-provider');
const privateKey= require('./secrets.json').privateKey;
module.exports = {
networks: {
development: {
host: "127.0.0.1", // Localhost (default: none)
port: 8765, // Standard Huygen port (default: none)
network_id: "*", // Any network (default: none)
},
mcpnet: {
provider: () => new HDWalletProvider([privateKey], `https://mcpnet.ccn.org`),
network_id: 971,
confirmations: 10,
timeoutBlocks: 200,
skipDryRun: true
},
},
// Set default mocha options here, use special reporters etc.
mocha: {
// timeout: 100000
},
// Configure your compilers
compilers: {
solc: {
version: "^0.8.0", // A version or constraint - Ex. "^0.8.0"
}
}
}
secrets.json
{
"privateKey": "8dd7404640b7f48e90967ad86e6402cfc39163cd391e32e07042f6f5c0a9639d"
}
Notice, it requires private key to be passed in for Provider, this is the private key for the account you'd like to deploy from. Create a new secrets.json file in root directory and enter private key to get started. You have enough CCN in the account corresponding to this private key.
Run this command in root of the project directory:
$ truffle migrate --network mcpnet
Reference
Last updated