Want to get involved in the Ethereum ecosystem? This page will give you some ideas and some resources.
We're going to divide this page into technical, research, and non-technical categories.
| import { Contract, Provider } from "ethers-multicall"; | |
| import { ethers } from 'ethers'; | |
| import { JsonFragment } from "@ethersproject/abi"; | |
| import { crvAbi } from './abis/crv'; | |
| import * as wstEthAbi from './abis/wsteth.json'; | |
| import * as yAbi from './abis/yAbi.json'; | |
| import * as erc20Abi from "../artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.json" | |
| const provider = new ethers.providers.AlchemyProvider("mainnet", process.env.ALCHEMY_API); |
| const eventFilterv5WithPagination = (contractAddress, erc20abi, _provider, numberOfResponses) => { | |
| // creating the interface of the ABI | |
| const iface = new ethers.utils.Interface(erc20abi.abi); | |
| // intialize array for the logs | |
| let logs = []; | |
| // get latest block number | |
| const latest = await provider.getBlockNumber(); | |
| // intialize a counter for which block we're scraping starting at the most recent block | |
| let blockNumberIndex = latest; |
| const eventFilter = (contractAddress, contractAbi, eventName, _provider) => { | |
| const provider = _provider | |
| // this will return an array with an object for each event | |
| const events = contractAbi.abi.filter(obj => obj.type ? obj.type === "event" : false); | |
| // getting the Transfer event and pulling it out of its array | |
| const event = events.filter(event => event.name === eventName)[0]; | |
| // getting the types for the event signature | |
| const types = event.inputs.map(input => input.type) | |
| // knowing which types are indexed will be useful later | |
| let indexedInputs = []; |
| [Unit] | |
| Description=Geth Node | |
| After=network.target auditd.service | |
| Wants=network.target | |
| [Service] | |
| WorkingDirectory=/home/pi | |
| ExecStart=/usr/local/bin/geth --syncmode fast --cache 256 --datadir /mnt/ssd/ethereum | |
| User=pi | |
| Group=pi | |
| Restart=always |
I hereby claim:
To claim this, I am signing this object: