npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@scintilla-network/sdk

v3.0.0

Published

A TypeScript SDK for Node.js and Web Browsers

Readme

@scintilla-network/sdk

The @scintilla-network/sdk provides a comprehensive suite of TypeScript primitives and utilities designed for building and interacting with the Scintilla blockchain. This SDK simplifies the development process by offering well-defined structures for assets, governance, transactions, and more, alongside essential utilities for hashing and variable-length integer handling.

npm version License: MIT

Installation

To install the SDK in your project, run:

npm install @scintilla-network/sdk

Primitives

The SDK includes a variety of primitives, each tailored for specific use cases within the Scintilla ecosystem:

  • Asset - An asset is a specific asset in the Scintilla network.
  • Authorization - An authorization is a message that is used to authorize a specific action.
  • BigDecimal - A big decimal is a decimal number that is used to represent a large number.
  • ClusterBlock - A cluster block is a block representation in a specific cluster.

  • DriveData - A drive data is a data that is stored in drive.

  • GovernanceProposal - A governance proposal is a proposal to the DAO.

  • GovernanceVote - A governance vote is a vote on a governance proposal.

  • HashProof - A hash proof is a POW block in a cluster

  • Identity - An identity is a unique entity with a moniker, address, and associated records.

  • Instruction - An instruction is a message that is used to perform a specific action.

  • Messages - Messages are the fundamental units of communication in the Scintilla network.

  • QuorumDecision - A quorum decision is a decision made by a quorum.

  • QuorumDecisionVote - A quorum decision vote is a vote on a quorum decision.

  • RelayBlock - A relay block is a specific block that happen between relayers.

  • Transaction - A transaction is a message that is used to perform a specific action.

  • Transfer - A transfer is a message that is used to transfer assets.

  • Voucher - A digital voucher for transferring assets.

  • Transition - A transition is a message that is used to transition the state of the system.

Misc Primitives

  • Peer - A peer is a part of the network.

Message

The SDK also includes primitives for message handling:

Utilities

For technical operations, the SDK provides utility functions and data structures:

Data Structures

Some technical utilities are designed for specific data handling and management scenarios:

Trees

MerkleTree and PatriciaTree are exported from @scintilla-network/trees for convenience.

import { Trees } from '@scintilla-network/sdk';
const merkleTree = new Trees.MerkleTree();
const patriciaTree = new Trees.PatriciaTree();
console.log(Trees.HASH_ALGORITHMS);

Merkle Tree are used to generate merkle root and proofs for a given data (i.e: HashProof, ClusterBlock, RelayBlock, etc.).

Network kind

Each packet starts with a kind:

    UNKNOWN = 0,
    PEER_INFO = 1,
    REQUEST = 2,
    RESPONSE = 3,
    ACKHANDSHAKE = 4,
    EPOCHBLOCK = 5,
    CLUSTERBLOCK = 6,
    HASHPROOF = 7,
    TRANSACTION = 8,
    TRANSITION = 9,
    TRANSFER = 10,
    STATEMENT = 11,
    HANDSHAKE = 12,
    QUORUMDECISION = 13,
    QUORUMDECISIONVOTE = 14,
    RELAYBLOCK = 15,
    VOUCHER = 16,
    ASSET = 17,
    IDENTITY = 18,
    GOVERNANCEPROPOSAL = 19,
    GOVERNANCEVOTE = 20,
    INSTRUCTION = 21,
    RAW = 22,
    PACKEDOBJECT = 23,
    PACKEDARRAY = 24,

These data structures are exported separately to emphasize their utility nature and potential broader applicability outside the direct blockchain interaction scenarios.

Usage

To use a primitive or utility from the SDK, import it into your TypeScript file as follows:

import { Asset, Transfer, sha256 } from '@scintilla-network/sdk';

// Example usage
const asset = new Asset({/* initial properties */});
const transfer = new Transfer({/* initial properties */});
const hash = sha256('your data here');

Refer to the individual documentation for each primitive and utility for detailed usage instructions.

Browser

<script type="module">
    import {Asset} from "@scintilla-network/sdk";
    console.log(new Asset('test'));
</script>

Related Packages

Contributing

We welcome contributions to the @scintilla-network/sdk! Please read our Contributing Guide for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE file for details.