fluffy-dog

A snapshot master for events analyzing on chains that are based on Ethereum Virtual Machine.

Usage no npm install needed!

<script type="module">
  import fluffyDog from 'https://cdn.skypack.dev/fluffy-dog';
</script>

README

Fluffy Dog

npm (tag)

A snapshot master for events analyzing on chains that are based on Ethereum Virtual Machine.

Keep Updated

For the latest news, please follow the @MartikKing. Dm me if you have any proposes or got a bug.

Installing

node.js

$.../temmartik/some_project> npm install --save fluffy-dog

How to

Simply import fluffy-dog into your project.

const { FluffyDog } = require('fluffy-dog');

Then create an instance of the fluffy-dog.


let dog = new FluffyDog(PRIVATE_KEY, NETWORK, BLOCK_NUMBER_FROM, BLOCK_NUMBER_TO)

dog.addListener("0x00contract1_address", ABI1_JSON, "SomeEvent1")
dog.addListener("0x00contract2_address", ABI2_JSON, "SomeEvent2")
dog.addListener("0x00contract3_address", ABI3_JSON, "SomeEvent3")

const ev = dog.bark();

const totalSummary = ev[{address: "0x00contract1_address", event: "SomeEvent1"}].sum("some_amount")
const summaryByAddresses = ev[{address: "0x00contract1_address", event: "SomeEvent1"}].sumBy("amount", "user")

const totalMedian = ev[{address: "0x00contract2_address", event: "SomeEvent2"}].median("some_amount")
const medianByAddresses = ev[{address: "0x00contract2_address", event: "SomeEvent2"}].medianBy("amount", "user")

const totalMean = ev[{address: "0x00contract3_address", event: "SomeEvent3"}].mean("some_amount")
const meanByAddresses = ev[{address: "0x00contract3_address", event: "SomeEvent3"}].meanBy("amount", "user")


Where:

-FluffyDog: Fluffy Dog instance constructor.

-addListener: add contract.

-bark: proccess collecting events after adding of contracts.

-sum: get total sum of chosen field (if numeric). Returns BN.

-sumBy: get sum of choosen field per choosen indexed field. Address by default. Set isAddress=false to the last argumnet if you want numeric index. Returns data frame.

-median: get total median of chosen field (if numeric). Returns BN.

-medianBy: get median of choosen field per choosen indexed field. Address by default. Set isAddress=false to the last argumnet if you want numeric index. Returns data frame.

-mean: get total mean of chosen field (if numeric).Returns BN.

-meanBy: get mean of choosen field per choosen indexed field. Address by default. Set isAddress=false to the last argumnet if you want numeric index. Returns data frame.