fungi

1.6.227 • Public • Published
    ______                  _ 
   / ____/_  ______  ____ _(_)
  / /_  / / / / __ \/ __ `/ / 
 / __/ / /_/ / / / / /_/ / /  
/_/    \__,_/_/ /_/\__, /_/   
                  /____/      

Extensible command-line tool

Overview

Fungi is an Extensible command line tool. extensions come packaged in boxes.

Boxes

  • DApp development (eosio cpp, eosio assemblyscript - TBD, solidity - TBD)
  • More coming soon.

Demos

  • helloworld - helloworld
  • deploy token - token

Getting stared

Prerequistes:

Install

    npm install -g fungi
    docker pull tmuskal/eosio.cdt
    docker pull tmuskal/fungi-eosio-dev

Additional installation steps on windows:

    @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
    choco install -y vcbuildtools docker docker-machine docker-compose
    docker-machine create -d hyperv default

Upgrade

    npm update -g fungi

Test

    fungi unbox helloworld --test

Usage inside a project

    fungi --help 

List Boxes

    fungi list-boxes

Update Boxes Repo

    fungi update --repos

Project structure

Directory structure:

    extensions/
    contracts/
    frontends/
    models/
    test/
    migrations/
    utils/
    services/
    fungi-box.json
    fungi-config.js

fungi-box.json:

    {
      "ignore": [
        "README.md"
      ],
      "commands": {
        "Compile contracts": "fungi compile",
        "Migrate contracts": "fungi migrate",
        "Test contracts": "fungi test"
      },
      "install":{
          "npm": {
              
          }
      },
      "hooks": {
        "post-unpack": "echo hello"
      }
    }

fungi-config.js

    module.exports = {
        defaultArgs:{
          chain:"eos",
          network:"development"
        },
        chains:{
            eos:{
                networks: {
                    development: {
                        host: "localhost",
                        port: 7545,
                        network_id: "*", // Match any network id
                        secured: false
                    },
                    jungle: {
                        host: "localhost",
                        port: 7545,
                        network_id: "*", // Match any network id
                        secured: false
                    },
                    mainnet:{
                        host: "localhost",
                        port: 7545,
                        network_id: "*", // Match any network id
                        secured: false
                    }
                }
            }
        }
    };

Collaborators

Readme

Keywords

none

Package Sidebar

Install

npm i fungi

Weekly Downloads

5

Version

1.6.227

License

ISC

Unpacked Size

2.7 MB

Total Files

16

Last publish

Collaborators

  • tmuskal