awesome-repositories.comCategoriesBlog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ipfs avatar

ipfs/js-ipfsArchived

0
View on GitHub↗
7,401 stars·1,211 forks·JavaScript·13 viewsjs.ipfs.tech↗

Js Ipfs

js-ipfs is an HTTP client library that connects to any IPFS daemon, enabling JavaScript applications to interact with the InterPlanetary File System. It provides a promise-based asynchronous API for managing content-addressed storage, where all data is identified by cryptographic hashes (CIDs) for immutable references and deduplication. The library communicates with a remote IPFS node through HTTP requests, supporting cancellation of in-flight operations via standard AbortController signals.

The library offers a comprehensive set of capabilities for working with IPFS, including adding and retrieving content by CID, managing a mutable filesystem with standard read/write/delete operations, and pinning content for permanent storage. It supports peer-to-peer file sharing through a distributed hash table (DHT) for peer discovery and content routing, as well as real-time pub/sub messaging over libp2p for topic-based communication between peers. Users can also publish and resolve IPNS names to create human-readable references to content-addressed data.

Additional functionality includes managing node configuration, monitoring node statistics such as bandwidth usage and repository stats, and querying the DHT to find peers or store key-value pairs. The library supports streaming data transfer for large files, allowing incremental processing without loading entire payloads into memory.

Features

  • Content-Addressable Storage - Stores and retrieves files using content hashes as permanent identifiers for verifiable, deduplicated storage.
  • HTTP Clients - Ships an HTTP client library that adds, retrieves, and pins content by CID on IPFS nodes.
  • HTTP Clients and Servers - Communicates with a remote IPFS daemon through HTTP requests as a client.
  • Content-Addressed File Systems - Creates and edits files and directories in a versioned, content-addressed filesystem.
  • Distributed Hash Tables - Leverages a Kademlia DHT for peer discovery and decentralized key-value storage.
  • Content-Addressable Retrievals - Fetches data from a storage node using content hashes as identifiers.
  • Virtual File System Layers - Provides a virtual filesystem layer over content-addressed storage with standard file operations.
  • Content Identifiers - Identifies all data by cryptographic content hashes for immutable references and deduplication.
  • Peer-to-Peer File Sharing - Provides a client library for sharing files directly between peers using the IPFS distributed network.
  • File System Clients - Provides an HTTP client for mutable filesystem operations and IPNS name publishing on IPFS.
  • File System Operations - Creates, reads, updates, and deletes files and directories within a mutable file system.
  • IPFS Clients - Ships a JavaScript HTTP client library that connects to any IPFS daemon for file and content management.
  • Daemon Client Connections - Connects to a remote IPFS daemon via HTTP to enable all API interactions.
  • Content-Addressed File Uploads - Uploads data or files to a content-addressed storage node, returning content identifiers for retrieval.
  • Decentralized Publishing Tools - Publishes websites and content that remain accessible even if the original server goes offline.
  • HTTP Clients - Provides an HTTP client for querying the DHT to find peers and store key-value pairs on IPFS.
  • Streaming Transfers - Transfers large files as streams for incremental processing without loading entire payloads into memory.
  • Content Pinning - Marks content as pinned to keep it permanently stored on a node, or removes pins for garbage collection.
  • HTTP Clients - Ships an HTTP client for subscribing to topics and publishing messages in IPFS's libp2p pub-sub system.
  • PubSub Subscribers - Provides an HTTP client for subscribing to topics and publishing messages in IPFS's pub-sub system.
  • Mutable Name Resolvers - Publishes content paths under human-readable names and resolves names back to current content paths.
  • Pub-Sub Messaging - Implements pub-sub messaging over libp2p for real-time topic-based communication between IPFS peers.
  • PubSub Messaging Systems - Uses libp2p's publish-subscribe protocol for real-time topic-based messaging between peers.
  • Request Abort Controllers - Implements signal-based abort controllers to cancel active network requests.
  • Asynchronous Promise Interfaces - Wraps all operations in JavaScript promises for non-blocking control flow.
  • Request Cancellation - Cancels in-flight HTTP requests using standard AbortController signals.

Star history

Star history chart for ipfs/js-ipfsStar history chart for ipfs/js-ipfs

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Js Ipfs

Similar open-source projects, ranked by how many features they share with Js Ipfs.
  • ipfs-shipyard/ipfs-desktopipfs-shipyard avatar

    ipfs-shipyard/ipfs-desktop

    6,535View on GitHub↗

    ipfs-desktop is a graphical application for managing a local IPFS node, hosting content, and interacting with the peer-to-peer network. It serves as a desktop client that provides a visual interface for content-addressed storage management, peer-to-peer file sharing, and the administration of the node lifecycle. The project differentiates itself by providing a comprehensive suite of controllers for node health, gateway routing, and static site hosting. It includes a dedicated content-addressed storage browser for importing and organizing files, a gateway controller to route network content th

    JavaScript
    View on GitHub↗6,535
  • ipfs/ipfsipfs avatar

    ipfs/ipfs

    23,137View on GitHub↗

    IPFS is a peer-to-peer hypermedia protocol and content-addressed storage system that identifies data by cryptographic hashes rather than network locations. It enables the creation of a decentralized web by organizing files and directories as directed acyclic graphs of linked content identifiers. The project differentiates itself through the use of a distributed hash table for locating peers and a system of signed records to map human-readable names to changing content. It also provides HTTP gateways that translate standard web requests into peer-to-peer queries, allowing decentralized data to

    ipfsipfs-protocolipfs-web
    View on GitHub↗23,137
  • ipfs/kuboipfs avatar

    ipfs/kubo

    17,056View on GitHub↗

    Kubo is a peer-to-peer implementation of the InterPlanetary File System (IPFS) designed for decentralized data storage and content delivery. It uses content-addressing, directed acyclic graphs, and distributed hash tables to identify, distribute, and retrieve data across a network without relying on central servers. The project differentiates itself by providing a virtual filesystem via FUSE, which maps decentralized network namespaces to local operating system directories for direct file access. It also includes integrated HTTP gateways that translate peer-to-peer content into standard web t

    Goipfs
    View on GitHub↗17,056
  • itheima1/blockchainitheima1 avatar

    itheima1/BlockChain

    4,647View on GitHub↗

    This project is a blockchain development course and framework designed to teach the creation of decentralized applications and smart contracts. It provides a structural guide and development kit for building software that interacts with distributed ledger technology and peer-to-peer storage. The project covers the implementation of consortium blockchains for enterprise settings, where shared ledgers are managed between trusted organizations. It also includes methodologies for orchestrating private blockchains and simulating local nodes for testing applications. The capability surface extends

    JavaScriptbitcionblockchaincryptocurrency
    View on GitHub↗4,647
See all 30 alternatives to Js Ipfs→

Frequently asked questions

What does ipfs/js-ipfs do?

js-ipfs is an HTTP client library that connects to any IPFS daemon, enabling JavaScript applications to interact with the InterPlanetary File System. It provides a promise-based asynchronous API for managing content-addressed storage, where all data is identified by cryptographic hashes (CIDs) for immutable references and deduplication. The library communicates with a remote IPFS node through HTTP requests, supporting cancellation of in-flight operations via standard…

What are the main features of ipfs/js-ipfs?

The main features of ipfs/js-ipfs are: Content-Addressable Storage, HTTP Clients, HTTP Clients and Servers, Content-Addressed File Systems, Distributed Hash Tables, Content-Addressable Retrievals, Virtual File System Layers, Content Identifiers.

What are some open-source alternatives to ipfs/js-ipfs?

Open-source alternatives to ipfs/js-ipfs include: ipfs-shipyard/ipfs-desktop — ipfs-desktop is a graphical application for managing a local IPFS node, hosting content, and interacting with the… ipfs/ipfs — IPFS is a peer-to-peer hypermedia protocol and content-addressed storage system that identifies data by cryptographic… ipfs/kubo — Kubo is a peer-to-peer implementation of the InterPlanetary File System (IPFS) designed for decentralized data storage… itheima1/blockchain — This project is a blockchain development course and framework designed to teach the creation of decentralized… ipfs/go-ipfs — go-ipfs is an implementation of an IPFS node, providing a distributed filesystem and a content-addressable storage… luin/ioredis — ioredis is a performance-focused Redis client for Node.js designed to execute commands and manage data connections. It…