Socket
Socket
Sign inDemoInstall

@chainsafe/lodestar-params

Package Overview
Dependencies
0
Maintainers
5
Versions
846
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @chainsafe/lodestar-params

Chain parameters required for lodestar


Version published
Maintainers
5
Created

Readme

Source

lodestar-params

npm License Eth Consensus Spec v1.1.10 ES Version Node Version

This package is part of ChainSafe's Lodestar project

Lodestar defines all constants and presets defined in the Ethereum Consensus spec. This can be used in conjunction with other Lodestar libraries to interact with the Ethereum consensus.

Installation

npm install @chainsafe/lodestar-params

Usage

The Lodestar params package contains several items used in all downstream Lodestar libraries:

  • Fork names
  • Constants
  • Presets

Fork names

Many downstream components are namespaced on fork names, or otherwise rely on knowing the fork names ahead of time. The Lodestar params package exports an enum ForkName the enumerates all known fork names.

import {ForkName} from "@chainsafe/lodestar-params";

// dummy data
let forkName = "phase0";

switch (forkName) {
  case ForkName.phase0:
  case ForkName.altair:
  case ForkName.bellatrix:
  default:
}

Constants

All constants defined in the spec are exported verbatim.

import {GENESIS_SLOT} from "@chainsafe/lodestar-params";

Presets

Presets are "constants"-ish defined in the spec that can only be configured at build-time. These are meant to be treated as constants, and indeed are treated as constants by all downstream Lodestar libraries. The default preset is mainnet. The only other preset defined is minimal, used only in testing environments.

The active preset is exported under the ACTIVE_PRESET named export.

import {ACTIVE_PRESET, SLOTS_PER_EPOCH} from "@chainsafe/lodestar-params";

The preset may be set in one of two ways:

  1. by setting the LODESTAR_PRESET environment variable
  2. by executing the setActivePreset(preset: Preset) function

Important Notes:

  • Interacting with and understanding the active preset is only necessary in very limited testing environments, eg: for ephemeral testnets
  • The minimal preset is NOT compatible with the mainnet preset.
  • using setActivePreset may be dangerous, and only should be run once before loading any other libraries. All downstream Lodestar libraries expect the active preset to never change.

License

Apache-2.0 ChainSafe Systems

Keywords

FAQs

Last updated on 05 Jul 2022

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc