awesome-repositories.com
Blog
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/ipfs

0
View on GitHub↗
23,137 stars·1,486 forks·MIT·14 viewsipfs.tech↗

Ipfs

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 be accessible via standard web browsers.

Broad capabilities cover decentralized data storage, including content pinning for persistence and the hosting of static websites with custom DNS resolution. The system also includes peer-to-peer messaging via a topic-based pubsub system, cryptographic key management for data authenticity, and tools for visualizing network traffic and peer connectivity.

Node operations can be managed through a command-line interface, a browser-based GUI, or a standardized HTTP RPC API.

Features

  • Content-Addressable Storage - Implements a storage architecture that identifies data by its cryptographic hash rather than a network location.
  • Decentralized Storage - Provides a system for storing and retrieving data across peer-to-peer networks without a central authority.
  • Networking - Identifying and locating data using cryptographic hashes instead of server locations to ensure data integrity.
  • Peer-to-Peer Protocols - Implements a decentralized hypermedia protocol for addressing and routing data using content identifiers.
  • Decentralized Node Operation - IPFS runs a daemon that manages data distribution, peer discovery, and content retrieval across a decentralized network.
  • P2P File Sharing - Calculates content identifiers for local files and makes them available to other nodes for decentralized exchange.
  • Remote Block Fetching - Locates peers hosting specific identifiers and fetches associated data blocks from remote network sources.
  • P2P Data Replication - IPFS manages a global set of pinned data by replicating and tracking files across multiple peers.
  • Content-Based Retrieval - IPFS fetches data from a peer-to-peer network using unique content identifiers via browser extensions or gateways.
  • Content Pinning - IPFS publishes files to a distributed network and ensures persistence through local nodes or pinning services.
  • P2P Persistence Coordination - IPFS ensures specific data remains available on the network by pinning blocks and managing data sets.
  • P2P Block Exchange - Implements a dedicated protocol for requesting and sending data blocks between peers.
  • P2P Provider Location - Queries distributed hash tables to identify which peers are hosting specific content identifiers.
  • Mutable Pointer Resolution - Maps persistent public keys to changing content identifiers via signed records to support data versioning.
  • Content-Addressable Retrievals - Fetches data from the network using content identifiers to ensure retrieval regardless of the physical node location.
  • Deduplication Encoders - Generates unique identifiers and data structures to ensure data integrity and global deduplication.
  • Content Pinning - IPFS stores specific data on a node to prevent deletion during garbage collection.
  • Merkle DAG File Systems - Organizes files and directories as a directed acyclic graph of linked content identifiers for immutable storage.
  • Content Identifiers - Provides unique, reproducible content identifiers based on hashes to locate and retrieve data from the network.
  • Content-Based Data Retrieval - IPFS downloads specific data from the network by pasting identifiers or network paths into a retrieval tool.
  • Content-Based Routing - Routes data requests through a network of peers based on the identifiers of the requested blocks.
  • Decentralized Website Hosting - IPFS serves web pages and applications across a peer-to-peer network without relying on a central server.
  • Peer-to-Peer Networking - Implements a peer-to-peer networking model where nodes act as both clients and servers to share resources.
  • Peer-to-Peer File Sharing - Saves and retrieves files across a peer-to-peer network to ensure availability without relying on a central server.
  • HTTP Gateway Proxies - Provides HTTP gateways that translate standard web requests into peer-to-peer queries for browser accessibility.
  • P2P-to-HTTP Bridging - IPFS resolves content identifiers through an HTTP proxy to make peer-to-peer data accessible to standard web browsers.
  • Hypermedia Protocols - Building applications that use content identifiers and linked data structures to create a permanent, distributed web.
  • Node Management RPCs - Exposes a remote procedure call API to programmatically manage node operations and decentralized data.
  • Peer-to-Peer Content Delivery - IPFS creates an accessible entry point for clients to retrieve hashed content from the peer-to-peer network using standard web protocols.
  • Peer-to-Peer Data Exchange - Transfers raw data chunks between nodes using a specialized protocol for efficient content retrieval.
  • Network Query Routing - Finds addresses for a peer ID or locates peers providing a specific value.
  • Routing Table Management - Maintains distributed routing tables to determine the best network path for retrieving content-addressed data.
  • RPC Interfaces - Provides a standardized HTTP RPC interface for controlling network operations and retrieving data across different languages.
  • Content Identifier Encoders - Encodes data or directories into unique, verifiable content identifiers using cryptographic hash functions.
  • Distributed Hash Tables - Implements a decentralized system for mapping keys to values to locate peers hosting specific data.
  • Peer-to-Peer Content Hosting - IPFS makes content-addressed data available to the network by hosting it locally or using a pinning service.
  • Merkle-Tree Data Integrity - Uses Merkle tree structures and hashing to ensure retrieved data has not been tampered with.
  • Content Hash Verification - Allows clients to verify that retrieved blocks match the requested cryptographic identifier.
  • Cryptographic Key Management - Manages the lifecycle of cryptographic keys for generating, importing, and verifying data signatures.
  • Data-Block Management - Manages the lifecycle of internal data blocks, including removal and reclamation of local storage space.
  • Graph Traversal - Queries and traverses decentralized data structures using selectors to retrieve specific parts of a graph.
  • Local-First Storage - IPFS pins specific data to a local node to prevent garbage collection and ensure availability.
  • Repository Integrity Checks - Checks blocks in the repository for corruption to ensure data consistency and integrity.
  • Storage Garbage Collection - Identifies and deletes orphaned or obsolete data objects to reclaim local storage space.
  • Recursive Pinning Verification - IPFS pins objects to prevent garbage collection and verifies that recursive pins are complete locally or remotely.
  • Third-Party Pinning Services - IPFS uses external services to ensure specific files remain available on the network without hosting a local node.
  • Name-Based Filesystem Interfaces - IPFS provides a name-based filesystem interface for adding and editing files while automating hash updates.
  • Static Site Deployments - IPFS pushes website files to a decentralized network automatically using continuous integration workflows.
  • RPC-Based Remote Management - Connects a command line interface to a local or remote daemon via RPC to manage data.
  • P2P Deployment - IPFS publishes static sites and applications to a peer-to-peer network with optional custom domain mapping.
  • Publish-Subscribe Messaging - Provides a publish-subscribe messaging mechanism for low-latency communication between distributed nodes.
  • Decentralized Data Replication - Propagates content between active and local nodes to create a redundant and decentralized backup.
  • Decentralized Naming Systems - Maps traditional domain names to content identifiers to provide human-readable entry points for decentralized data.
  • Cluster State Coordinators - Provides systems to maintain a consistent view of global cluster topology and metadata across multiple nodes.
  • DNS-to-Content Linking - Associates standard DNS domain names with decentralized content addresses to improve accessibility.
  • Custom HTTP Response Serving - IPFS retrieves content-addressed data via HTTP requests using identifiers and optional paths to force file downloads.
  • Topic-Based Broadcasting - Enables sending data to all peers subscribed to specific topics via routed gossip networks.
  • NAT Traversal - Establishes direct peer connections through firewalls using relay nodes and coordinated signaling.
  • Routing Delegation - Offloads P2P discovery and routing queries to specialized remote endpoints to resolve content identifiers.
  • Peer Connection Management - Lists active listeners, pings remote hosts, and manages peering relationships.
  • Peer-to-Peer Messaging - Implementing real-time communication and data broadcasting between nodes using a decentralized pubsub system.
  • Bootstrap Node Discovery - Customizes node behavior and optimizes connectivity by modifying bootstrap peer lists and local settings.
  • Bootstrap Peer Management - Adds, removes, or lists the initial set of peers used to join the network.
  • Signed Record Management - Publishes and resolves signed records that map human-readable names to evolving content addresses.
  • Recursive Hashing Utilities - Generates unique content identifiers for files and directories by recursively processing their contents.
  • P2P Node GUIs - Controls a peer-to-peer node through a visual interface for managing files, peers, and system settings.
  • Browser File Management - Provides a browser interface to pin content, import files, and copy shareable content identifiers.
  • DNS Linkage - IPFS resolves a domain DNS record to a content identifier to serve peer-to-peer data over HTTPS.
  • Static Site Hosting - Serves as a platform for publishing and delivering pre-authored web assets across a peer-to-peer network.
  • Blockchain Development - Peer-to-peer hypermedia protocol for distributed file storage and sharing.

Star history

Star history chart for ipfs/ipfsStar history chart for ipfs/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 Ipfs

Similar open-source projects, ranked by how many features they share with Ipfs.
  • 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
  • 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
  • orbitdb/orbit-dborbitdb avatar

    orbitdb/orbit-db

    8,791View on GitHub↗

    Orbit DB is a decentralized NoSQL database that utilizes conflict-free replicated data types to ensure eventual consistency across a network of nodes. It functions as a peer-to-peer data store that uses IPFS for content-addressing and synchronization, allowing for the maintenance of application state without a central server or authority. The system is built upon a cryptographically verifiable, immutable operation log, which serves as the foundation for custom decentralized data models. This architecture enables the implementation of various data storage patterns, including JSON document stor

    JavaScript
    View on GitHub↗8,791
  • ipfs/js-ipfsipfs avatar

    ipfs/js-ipfs

    7,401View on GitHub↗

    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 ret

    JavaScriptdecentralizeddistributedimmutable
    View on GitHub↗7,401
See all 30 alternatives to Ipfs→

Frequently asked questions

What does ipfs/ipfs do?

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.

What are the main features of ipfs/ipfs?

The main features of ipfs/ipfs are: Content-Addressable Storage, Decentralized Storage, Networking, Peer-to-Peer Protocols, Decentralized Node Operation, P2P File Sharing, Remote Block Fetching, P2P Data Replication.

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

Open-source alternatives to ipfs/ipfs include: ipfs/kubo — Kubo is a peer-to-peer implementation of the InterPlanetary File System (IPFS) designed for decentralized data storage… ipfs-shipyard/ipfs-desktop — ipfs-desktop is a graphical application for managing a local IPFS node, hosting content, and interacting with the… orbitdb/orbit-db — Orbit DB is a decentralized NoSQL database that utilizes conflict-free replicated data types to ensure eventual… ipfs/go-ipfs — go-ipfs is an implementation of an IPFS node, providing a distributed filesystem and a content-addressable storage… ipfs/js-ipfs — js-ipfs is an HTTP client library that connects to any IPFS daemon, enabling JavaScript applications to interact with… sharedropio/sharedrop — ShareDrop is a browser-based platform designed for direct, peer-to-peer file exchange between devices. It facilitates…