All Projects → HAECHI-LABS → Vvisp

HAECHI-LABS / Vvisp

Licence: mit
A Smart Way to Operate Smart Contracts on EVM Based Blockchains like Ethereum

Programming Languages

javascript
184084 projects - #8 most used programming language
solidity
1140 projects

Projects that are alternatives of or similar to Vvisp

Smart Contracts Example
Simple example of token market. Based on blockchain technology using Ethereum platform.
Stars: ✭ 37 (-58.43%)
Mutual labels:  blockchain, smart-contracts
Remix
This has been moved to https://github.com/ethereum/remix-project
Stars: ✭ 1,063 (+1094.38%)
Mutual labels:  blockchain, smart-contracts
Learn Solidity
Code base for "Learn Solidity: Programming Language for Ethereum Smart Contracts" course in Tosh Academy & Blockchain Council
Stars: ✭ 44 (-50.56%)
Mutual labels:  blockchain, smart-contracts
Solidity Smart Contracts
smart contracts which are built on ethereum wallet mist,truffle compiler using solidity language.
Stars: ✭ 11 (-87.64%)
Mutual labels:  blockchain, smart-contracts
Ethnode
Run an Ethereum node (Geth or Openethereum) for development
Stars: ✭ 74 (-16.85%)
Mutual labels:  blockchain, smart-contracts
Ethereum book
精通以太坊 (中文版)
Stars: ✭ 875 (+883.15%)
Mutual labels:  blockchain, smart-contracts
Ethereumbook
Mastering Ethereum, by Andreas M. Antonopoulos, Gavin Wood
Stars: ✭ 11,663 (+13004.49%)
Mutual labels:  blockchain, smart-contracts
Oyente
An Analysis Tool for Smart Contracts
Stars: ✭ 820 (+821.35%)
Mutual labels:  blockchain, smart-contracts
Smart Contracts
Ethereum smart contracts for security and utility tokens
Stars: ✭ 1,187 (+1233.71%)
Mutual labels:  blockchain, smart-contracts
Izzzio
IZZZIO - Fully customizable blockchain platform | Node
Stars: ✭ 73 (-17.98%)
Mutual labels:  blockchain, smart-contracts
Gdai.io
gDAI - Gas less DAI transfers by using GSN, Fulcrum and KyberNetwork
Stars: ✭ 26 (-70.79%)
Mutual labels:  blockchain, smart-contracts
Whale
🐋 Show Ethereum and Bitcoin price in command line interface (CLI).
Stars: ✭ 81 (-8.99%)
Mutual labels:  blockchain, cli
Aeternity
æternity: solving scalability problems by making sense of state-channels
Stars: ✭ 923 (+937.08%)
Mutual labels:  blockchain, smart-contracts
Stellar Contracts
Stellar contract examples and components
Stars: ✭ 36 (-59.55%)
Mutual labels:  blockchain, smart-contracts
Snax
Decentralized Social Media Overlay
Stars: ✭ 18 (-79.78%)
Mutual labels:  blockchain, smart-contracts
Mortgageblockchainfabric
Mortgage Processing App using Hyperledger Fabric Blockchain. Uses channels for privacy and access, and restricts read/write previleges through endorsement policies
Stars: ✭ 45 (-49.44%)
Mutual labels:  blockchain, smart-contracts
Hardhat
Hardhat is a development environment to compile, deploy, test, and debug your Ethereum software. Get Solidity stack traces & console.log.
Stars: ✭ 727 (+716.85%)
Mutual labels:  blockchain, smart-contracts
Ethereum Development With Go Book
📖 A little book on Ethereum Development with Go (golang)
Stars: ✭ 754 (+747.19%)
Mutual labels:  blockchain, smart-contracts
Waves
⛓️ Reference Waves Blockchain Node (client) implementation on Scala
Stars: ✭ 1,077 (+1110.11%)
Mutual labels:  blockchain, smart-contracts
Blockchain Real Estate
🚀基于区块链的房地产交易系统小模型。提供销售和捐赠功能。本项目使用Hyperledger Fabric构建区块链网络, go编写智能合约,应用层使用gin+fabric-sdk-go调用合约。前端展示使用vue+element。体验地址:http://blockchain.togettoyou.com/web
Stars: ✭ 81 (-8.99%)
Mutual labels:  blockchain, smart-contracts

vvisp

Korean version: README-ko.md

CircleCI NPM Coverage Status standard-readme compliant Conventional Commits lerna

The easiest smart contract development framework and command line interface on EVM based blockchain.

Simple and fast smart contract deployment and execution with a single command line

VVISP is sponsored by the EF(Ethereum Foundation). EF gave the grants to HAECHI LABS at ethcon korea 2019.

Key Benefits

  • Improving Environment of Blockchain Service Development
  • Reducing Operation Time of Blockchain Service Development
  • Shortening the Learning Curve of Developers Who Are Not Familiar with Blockchain

Table of Contents

Description

CLI tool easy to use for developers who are not familiar with blockchain.

: Smart contracts in the blockchain are uncommon development areas. There are many things that developers are unfamiliar with DApp development. Even if you create a contract by referring to several references, there is an entry barrier to learn how to deploy and how to use smart contracts. vvisp is a command line interface (CLI) tool designed to reduce the learning curve.

(1) Deploying a contract with a single line of command

: Deploying smart contracts to a blockchain is very complex. In order to deploy a contract, you must write your smart contract deployment codes as well as create smart contracts. A developer needs to consider deploying multiple smart contracts in order for DApp. vvisp defines deployment target as a simple configuration file and then deploys smart contracts by considering the dependencies automatically with a single line of command instead of hundreds lines of code.

(2) Executing the contract function with one command line

: Developers had to study the library, call the function, and manually write the function call code to execute the function of a contract. This is a big entry barrier for developers who are unfamiliar with smart contract development. However, vvisp is designed to execute a specific function of a contract with a single command line and to receive results without complex processes.

Contributors: Please see the Contributing section of this README.

Install

Install Node.js first. Then, install npm and

$ npm install -g @haechi-labs/vvisp

or install yarn and

$ yarn global add @haechi-labs/vvisp

Usage

If you want to see sample repository, see here.

1. Start your project

$ vvisp init my-project
$ cd my-project

$ npm install #or yarn install

You don't have to do $ npm init or $ truffle init. We supports environment for truffle and it will make package.json automatically.

See details for $ vvisp init.

2. Make your Contracts at contracts/

Now, you can use gen-script, compile and flatten commands.

3. Set vvisp-config.js file

Please set environment variables in vvisp-config.js file.

Example

const MNEMONIC = 'YOUR_MNEMONIC';

module.exports = {
  networks: {
    development: {
      url: 'URL_TO_ETHEREUM_NODE',
      gasLimit: 6721975,
    }
  },
  compilers: {
    solc: {
      version: '0.5.8'
    }
  },
  from: { // or from: 'YOUR_PRIVATE_KEY'
    mnemonic: MNEMONIC,
    index: 0
  },
};

See more information at here for more information about vvisp-config.js. Now you can use deploy-contract command.

4. Set service.vvisp.json file

Please set information about your DApp service in service.vvisp.json.

Example

{
  "serviceName": "Haechi",
  "variables" : {
    "exampleVarName": 123
  },
  "contracts": {
    "ContractKeyName1": {
      "path": "./contracts/Contract1.sol",
      "name": "Contract1",
      "constructorArguments": [
        "${contracts.ContractKeyName1.address}",
        "${variables.exampleVarName}"
      ],
      "initialize": {
        "functionName": "initialize",
        "arguments": ["argument1", "argument2"]
      }
    },
    "ContractKeyName2": {
      "path": "./contracts/Contract2.sol",
      "name": "Contract2",
      "initialize": {
        "functionName": "initialize",
        "arguments": ["argument1", "argument2"]
      }
    }
  }
}

See more information at here for more information about service.vvisp.json. Now you can use deploy-service command.

Please see CONFIGURATION.md to configure your project.

Run $ vvisp --help for more details about functions of vvisp.

Commands

Please see linked documentation below:

  • init: Start your project
  • compile: Compile solidity contract files
  • deploy-contract: Deploy contract
  • deploy-service: Deploy service of your contracts
  • gen-script: Generate javascript APIs interacting with smart contract on blockchain
  • console: Provides a console environment that can invoke contracts interactively
  • flatten: Flatten several contract files in one file

Architecture

vvisp communicates with main-net, test-net through rpc, and helps to develop, upgrade, test, compile and control the user’s current version of the DApp service. vvisp supports truffle test framework.

  • vvisp

    vvisp consists of vvisp-utils and vvisp.

    • vvisp-utils

      vvisp-utils provides several useful functions for use with vvisp or vvisp-sample.

    • vvisp

      vvisp performs the core logic of vvisp.

  • vvisp-sample

    vvisp-sample is the boilerplate package generated by vvisp init command.

    • contractApis

      It is generated automatically by the vvisp gen-script command and provides a javascript library that allows you to easily execute deployed projects.

    • configuration

      These are the configuration files needed for vvisp to work and test such as vvisp-config.js, service.vvisp.json, state.vvisp.json

    • test

      These are test cases of user-written contracts.

    • contracts

      The contracts that the user write himself.

Contributing

Thank you for considering to join this project! We always welcome contributors :)

Notes on project main branches:

  • master: Stable, released version
  • dev: Work targeting stable release

To contribute, please see CONTRIBUTING.md.

Contact

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].