Skip to main content
For the complete documentation index, see llms.txt

midnight-js

Midnight.js API Reference v4.0.4


Midnight.js API Reference / @midnight-ntwrk/midnight-js

Midnight.js

Barrel package that provides a single entry point to the core components of Midnight.js. Import all core modules from one package instead of installing them individually.

Installation

yarn add @midnight-ntwrk/midnight-js

Quick Start

import { contracts, networkId, types, utils } from '@midnight-ntwrk/midnight-js';

networkId.setNetworkId('testnet');

const deployed = await contracts.deployContract(providers, {
compiledContract: myContract,
privateStateId: 'my-state',
initialPrivateState: { counter: 0n }
});

Modules

ModulePackageDescription
contracts@midnight-ntwrk/midnight-js-contractsContract deployment and interaction utilities
networkId@midnight-ntwrk/midnight-js-network-idNetwork identifier management
protocol@midnight-ntwrk/midnight-js-protocolVersion-agnostic protocol type re-exports
types@midnight-ntwrk/midnight-js-typesShared types, interfaces, and provider contracts
utils@midnight-ntwrk/midnight-js-utilsHex encoding, address validation, and utilities

Sub-path Imports

Each module is also available as a sub-path import for tree-shaking:

import { deployContract, findDeployedContract } from '@midnight-ntwrk/midnight-js/contracts';
import { setNetworkId, getNetworkId } from '@midnight-ntwrk/midnight-js/network-id';
import { type ProofProvider, type WalletProvider } from '@midnight-ntwrk/midnight-js/types';
import { toHex, fromHex } from '@midnight-ntwrk/midnight-js/utils';

Exports

// Namespace imports (all modules)
import { contracts, networkId, types, utils } from '@midnight-ntwrk/midnight-js';

// Sub-path imports (individual modules)
import { ... } from '@midnight-ntwrk/midnight-js/contracts';
import { ... } from '@midnight-ntwrk/midnight-js/network-id';
import { ... } from '@midnight-ntwrk/midnight-js/types';
import { ... } from '@midnight-ntwrk/midnight-js/utils';

Resources

Terms & License

By using this package, you agree to Midnight's Terms and Conditions and Privacy Policy.

Licensed under Apache License 2.0.