Security News
Cloudflare Adds Security.txt Setup Wizard
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
eth-block-tracker
Advanced tools
The eth-block-tracker npm package is designed to help developers track the latest blocks on the Ethereum blockchain. It provides a simple interface to subscribe to new block events, poll for new blocks, and manage block tracking efficiently.
Polling for New Blocks
This feature allows you to poll for new blocks on the Ethereum blockchain. The code sample demonstrates how to set up a block tracker that listens for the latest block and logs it to the console.
const EthBlockTracker = require('eth-block-tracker');
const provider = require('eth-provider');
const blockTracker = new EthBlockTracker({ provider: provider() });
blockTracker.on('latest', (block) => {
console.log('Latest block:', block);
});
blockTracker.start();
Handling Errors
This feature allows you to handle errors that may occur during block tracking. The code sample demonstrates how to set up an error handler that logs errors to the console.
const EthBlockTracker = require('eth-block-tracker');
const provider = require('eth-provider');
const blockTracker = new EthBlockTracker({ provider: provider() });
blockTracker.on('error', (error) => {
console.error('Error:', error);
});
blockTracker.start();
Custom Polling Interval
This feature allows you to set a custom polling interval for checking new blocks. The code sample demonstrates how to set up a block tracker with a polling interval of 20 seconds.
const EthBlockTracker = require('eth-block-tracker');
const provider = require('eth-provider');
const blockTracker = new EthBlockTracker({ provider: provider(), pollingInterval: 20000 });
blockTracker.on('latest', (block) => {
console.log('Latest block:', block);
});
blockTracker.start();
The web3 package is a comprehensive library for interacting with the Ethereum blockchain. It includes functionality for tracking blocks, but also provides a wide range of other features such as contract interaction, account management, and more. Compared to eth-block-tracker, web3 is more feature-rich but may be overkill if you only need block tracking.
The ethers package is another popular library for interacting with the Ethereum blockchain. It offers similar functionalities to web3, including block tracking, but is known for its smaller size and better performance. Like web3, it provides a broader set of features beyond block tracking.
The ethereumjs-blockstream package is specifically designed for streaming Ethereum blocks. It provides a more focused approach to block tracking compared to web3 and ethers, making it a closer alternative to eth-block-tracker. However, it may not be as widely used or supported as the other two libraries.
ethjs-query new BlockTracker({ provider })
// // public //
getCurrentBlock() start() stop()
block <-- every block in order fork <-- common root of fork force <-- latest block was forced latest <-- the latest block, possibly skipping blocks
// // private //
async _performSync() { const latestBlock = await this._fetchLatestBlock() return this._considerBlock(latestBlock) }
async _considerBlock(newBlock) { const currentBlock = this.getCurrentBlock() // check if new block should be head if (!difficultyLessThan(currentBlock, newBlock)) { return Promise.resolve() } const blockPath = await _fetchPathBetweenBlocks(currentBlock, newBlock) }
_fetchPathBetweenBlocks (startBlock, endBlock) { // walk from end to start }
_fetchLatestBlock
_fetchBlockByHash
_fetchBlockByTag
poll latest, walk back to current block, abort if too far? ignore if 'latest' if less difficulty
FAQs
A block tracker for the Ethereum blockchain. Keeps track of the latest block.
The npm package eth-block-tracker receives a total of 198,897 weekly downloads. As such, eth-block-tracker popularity was classified as popular.
We found that eth-block-tracker demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 13 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
Security News
The Socket Research team breaks down a malicious npm package targeting the legitimate DOMPurify library. It uses obfuscated code to hide that it is exfiltrating browser and crypto wallet data.
Security News
ENISA’s 2024 report highlights the EU’s top cybersecurity threats, including rising DDoS attacks, ransomware, supply chain vulnerabilities, and weaponized AI.