amethysta

1.0.2 • Public • Published

Introduction

Library for validating smart contracts made on the Etherium Network. In order to facilitate the development of SmartContracts validation platforms, Amethysta is a great tool for Creating Explorers and Token Validators.

Install

To install this library in your project, use NPM to download.

npm install amethysta

Then import this library in the root of your project

/** 
 * If you download through git, 
 * import this library through the index.js route
*/
import Amethysta from "amethysta";

Constructor

After the import, build the sapphire Request Object so that the class functions are presented.

/** 
 *  If you want, you can configure
 *  some settings inside the builder,
 *  such as api version, schedule and protocol
*/
var sapphire = new Amethysta();

Functions

Now it is possible to use the functions within the project in a simple way.

GetSmartContract

Method that obtains the contents of a .sol smart contract to be validated. It will be parsed so that it can be read and interpreted by the validation algorithm.

    var smart = await safir.GetSmartContract('./MetaContract.sol');

this return:

{
  type: 'SourceUnit',
  children: [
    {
      type: 'PragmaDirective',
      name: 'solidity',
      value: '>=0.7.0 <0.9.0'
    },
    {
      type: 'ContractDefinition',
      name: 'MetaContract',
      baseContracts: [],
      subNodes: [Array],
      kind: 'contract'
    }
  ]
}

CheckSmartContract

this function checks the status of the previously made request, so that it can be confirmed if it is a valid request.

    var smart = await safir.GetSmartContract('./MetaContract.sol');
    var locale = await safir.CheckSmartContract(smart);

SendForRemix

This function verifies the contract with the Remix API where a verification is requested within the Etherium IPFS where it will return a Hash containing the request information, if it is successfully verified.

var remix = await safir.SendForRemix(smart);

this return

{
  Name: 'QmekfvjFTUq1n9Ku45c3aLXQfYPSSN81fLCRx2893B6oKL',
  Hash: 'QmekfvjFTUq1n9Ku45c3aLXQfYPSSN81fLCRx2893B6oKL',
  Size: '1372'
}

developer contact

Telegram: @VictorRatts

Package Sidebar

Install

npm i amethysta

Weekly Downloads

1

Version

1.0.2

License

GPL

Unpacked Size

1.34 MB

Total Files

17

Last publish

Collaborators

  • ratts13