
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
@dfinity/icp-calculator
Advanced tools
A calculator of fees and costs for smart contracts on the Internet Computer Protocol (ICP)
This repository contains a utility library that implements a calculator of fees and costs for smart contracts on the Internet Computer Protocol (ICP).
Currently it supports the following operations and resources:
More will be added in the future.
# with npm
npm install @dfinity/icp-calculator
# with pnpm
pnpm add @dfinity/icp-calculator
# with yarn
yarn add @dfinity/icp-calculator
See src/index.spec.ts for more examples of usage.
import {
calculators,
Direction,
Duration,
Mode,
} from "@dfinity/icp-calculator";
import type { Bytes, Instructions } from "@dfinity/icp-calculator";
const $ = calculators().calculatorUSD;
const storage1mb = $.storage(1_000_000 as Bytes, Duration.fromDays(365));
const execute1b = $.execution(Mode.Replicated, 1_000_000_000 as Instructions);
const send1mb = $.message(
Mode.Replicated,
Direction.UserToCanister,
1_000_000 as Bytes,
);
expect(storage1mb).toBeCloseTo(0.00494, 5);
expect(execute1b).toBeCloseTo(0.00053, 5);
expect(send1mb).toBeCloseTo(0.00265, 5);
The main logic of the calculator is in src/calculator.ts.
The code there mirrors the replica code and it depends on the replica config, which is stored in src/icp/config.json.
The JSON config file is generated by the icp_config tool in the replica repository.
The JSON config file can be updated as follows:
# Check out `https://github.com/dfinity/ic` to `~/ic`
# Check out `https://github.com/dfinity/icp-calculator` to `~/icp-calculator`
cd ~/ic
bazel run //rs/execution_environment/tools:icp_config -- --replica-version=rc--2024-07-25_01-30 --output=~/icp-calculator/src/icp/config.json
@dfinity/icp-calculator exposes following types and functions:
The main export of the library. It returns cost calculators that operate in cycles and USD based on the given options.
| Function | Type |
|---|---|
calculators | (options?: Options or undefined) => Calculators |
Parameters:
options: - optional options to configure the calculators.FAQs
A calculator of fees and costs for smart contracts on the Internet Computer Protocol (ICP)
We found that @dfinity/icp-calculator demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 11 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.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.