Git Product home page Git Product logo

confluxstudio's Introduction

Conflux Studio

Conflux Studio is an integrated development environment (IDE), making developing Conflux smart contracts faster and easier.

English | 简体中文

Install

Download

Download Conflux Studio install-package in Github Release according to the computer system type (.dmg/.zip for macOS, .AppImage for Linux, .exe for Windows).

You can also download the latest the installation packages through the links (Mac, Windows, Linux).

Install

  • macOS: Double click to open ConfluxStudio-x.x.x.dmg and drag Conflux Studio to the application folder.
  • Linux: Double-click to open ConfluxStudio-x.x.x.AppImage, select Properties => Permissions => Execute, and tick the Allow executing file as progrom option. Close the properties window and double-click to open the application (different Linux distributions may have different installation methods).
  • Windows: Double click to run the ConfluxStudio-x.x.x.exe.

Tutorial

Learn how to use Conflux Studio to completely develop a token DApp in the Conflux DApp Tutorial.

Features

Preparation

When Conflux Studio is properly installed and started for the first time, users will see a welcome page, where the dependencies for Conflux are displayed, including Docker, Conflux Node and Conflux Truffle.

  • Docker is used to to start the Conflux Node and compile projects in Conflux Studio. If Docker is not installed yet, users can click the Install Docker button to visit the official Docker website and download and install it.
  • Conflux Node is the Conflux node image officially provided by Conflux. Conflux Studio uses the image to run the Conflux node and compile projects.
  • Conflux Truffle is a Conflux version of truffle used to create and compile projects.

When all the dependencies are properly installed and run, the gray Skip button will change into a green Get Started button. Click the button to enter the main interface of Conflux Studio.

Create Keypairs

After entering the main interface, users need to create some keypairs by opening the keypair manager by clicking the key icon at the bottom left on any interface of Conflux Studio.

Users can create, import and manage keypairs in the keypair manager. When creating and editing a keypair, users can set an alias for the keypair to facilitate identification in later use. Besides storing and managing keypairs, the keypair manager will also provide a genesis address for the genesis block. When creating a new Conflux node instance, all addresses in the keypair manager will be regarded as genesis addresses, and each address will get a total of 10,000 initial CFX tokens.

Before the following steps, users need to create some keypairs in the key manager as the genesis address for creating node instances.

Start the Node

Click the Network tab at the top to switch the main interface to the network manager. In the network manager, users can manage Conflux node versions and node instances, including downloading and deleting Conflux node versions, and creating, deleting and running node instances in line with different versions.

Click the New Instance button in the upper right corner of the main interface to open the pop-up window for creating a new instance. Fill in the instance name and select the appropriate Conflux version, and click the Create button to complete the creation of a node instance.

When a node instance is created, the instance list will show the newly created instance. Click the green Start button of the instance to start the Conflux node. After starting, users can check the node running log in the log viewer below.

Block Explorer

After the node is started, click the Explorer tab at the top to switch the main interface to the block explorer. In the block explorer, users can query the information of a given address. This module is still under development, so users can only check the balance in the explorer currently.

Copy the address generated from the keypair manager, paste the address in the address bar and click Enter, then the balance of the address will be visible.

Create Smart Contract Projects

Click the Project tab at the top to switch the main interface to the project manager. Click the New button in the upper right corner of the page to open the Create a New Project pop-up window, enter the project name and select an appropriate template. Currently Conflux Studio provides two templates:

  • coin:the coin smart contract provided by the Conflux instance
  • [Truffle] metacoin:a contract created using Conflux Truffle; the project cannot be deployed to the Conflux node at present

After the project is created, the main interface will switch to the project editor. The project editor consists of several commonly used development modules, including a file browser, code editor, toolbar, log viewer, etc.

Compile Smart Contract Projects

Click the compile button (hammer-shaped) on the toolbar, Conflux Studio will compile the project, and you can view the compilation result through the log viewer below. After compilation, a json file will be generated in the build folder under the project directory.

Deploy Smart Contract Project

Click the deploy button (boat-shaped) on the toolbar to open the Deploy modal. You can enter constructor parameters, signer, gas limit and gas price for the deployment.

Click the Deploy button, Conflux Studio will deploy the project, and the deployment result will be displayed in a pop-up window.

Call the Contract

After successfully deploying the smart contract, click the blue contract button in the pop-up window, the main interface will switch to the contract explorer, and Conflux Studio will automatically open the smart contract just deployed.

The contract explorer interface includes two parts:

  • On the left is the calling method of the contract. Click the blue button in the upper left of the left column, the drop-down box displays the methods defined by the current contract. Users can click the method name to select the calling method.
  • On the right is the data reading of the contract. Click the blue button in the upper left of the right column, the drop-down box shows the data table of the current contract. Users can click the table name to view the data in different tables.

Conflux Studio will automatically read the functions in the contract ABI and generate a parameter table for each function. Select the function to be called, enter the parameters, select the signer (the signer should be an existing address in the keypair manager; the read operation does not need to be selected), and click the run button to call the contract. The call result (success or failure) will be displayed in the result viewer below.

Next, create coins using the deployed contract. Select the mint method, enter the receiver address (which can be copied from the keypair manager) and an appropriate amount in the Parameters part, enter the genesis address in the Authorization part, and click the execution button above. After completing the transaction, users can see the result of successful execution in the Result viewer in the lower left column. Now we have created new coins.

In the balance table on the right, enter the receiver address just filled in in the Parameters Part, click the execution button, and users can see the total number of coins minted just now.

confluxstudio's People

Contributors

qftgtr avatar leonlianght avatar actions-user avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.