back to home

dfinity / icp-js-canisters

Libraries and utilities for interacting with canisters on the Internet Computer.

82 stars
26 forks
7 issues
JavaScriptTypeScriptShell

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing dfinity/icp-js-canisters in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/dfinity/icp-js-canisters)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

📦 A modular library for interacting with canisters on the Internet Computer. Introduction This repository provides an SDK designed to make it easy to interact with Internet Computer canisters when developing frontend applications or Node.js scripts in TypeScript or JavaScript. ✅ Recommended • : a **modular entry-point library** exposing various submodules for interacting with well-known Internet Computer canisters and services. 🧩 Legacy single-entry packages The following libraries are exposed by the modular subpath-only library above, but remain available and are released in parallel for backward compatibility: • : interfacing with the **governance** canisters of the Network Nervous System (NNS) • : interacting with a Service Nervous System (SNS) project • : interfacing with the **CMC** canister of the IC • : interfacing with the **ICP** ledger • : interacting with **ICRC**-compatible ledgers • : interfacing with **ckBTC** • : interfacing with **ckETH** • : interfacing with the **IC management canister** 🧰 Utilities This repo also provides various tools that are used internally by the SDK packages but also prove to be extremely useful when developing projects. • : a collection of utilities and constants • : reusable Zod schemas and validators for common data patterns in ICP applications > [!NOTE] > is a peer dependency of the libraries exposed by but is not itself re-exported by this library. 🗃️ Deprecated While not deprecated on npm, the following library is no longer actively developed: • : protobuf sources formerly used by to support hardware wallets. Installation Install the recommended modular library from npm: Or, if you prefer to install individual packages: To ensure proper tree-shaking and avoid code duplication, all packages reference and as peer dependencies. Make sure these are installed in your project: Links Here are some useful links: • See the HACKING document for some information about local development • CHANGELOG or Releases for version history • ADMIN for notes on repository administration