
Scientific software is undergoing a quiet but profound shift. Research outputs become larger, more interconnected, and increasingly machine-driven by the day. In this context, the limitations of traditional, platform-centric publishing models are becoming clear.
That is why we have built Codex: a protocol that provides science builders with a decentralized, developer-first foundation that makes scientific outputs easier to preserve, reproduce, and reuse at scale.
Let’s jump into the core tooling we maintain around Codex and how you can take advantage of it on your scientific projects and development.
Codex is a decentralized network for publishing and preserving scientific research objects.
The protocol moves beyond the limitations of PDFs, enabling publications as fully structured, modular, and enriched research objects that can include manuscripts, datasets, code, figures, and metadata, everything with a transparent version history. Each item is content-addressed, securely replicated across multiple nodes, and accessible via persistent, reliable identifiers, ensuring research is durable, discoverable, and reusable.
The broader aim is to enable durable, interoperable, and machine-readable scientific outputs that are not dependent on a single service provider. Content is resolved in a peer-to-peer fashion, ensuring resiliency and minimizing the dependency on any single point of failure.
On top of the core protocol, several libraries and services support different developer workflows.
The library provides direct, low-level programmatic access to Codex publications and metadata. It exposes protocol primitives intended for developers who need fine-grained control or who are building custom infrastructure on top of Codex.
This library is well suited for use cases that require direct interaction with manifests, identifiers, and underlying data models, and does not impose opinionated abstractions on top of the protocol. It can also be used to create new protocol data types that express other types of scholarly content in addition to research publications
Nodes-Lib builds on the lower-level Codex components to support higher-level publishing workflows.It is an integration toolkit for automating the same actions that you can perform in our Nodes publishing app.
It enables developers to create, manage, and publish research objects programmatically, including support for private drafts, structured metadata, licensing, and versioned publication to the network. It does this by combining the Codex’s open infrastructure with the compute and storage capabilities of the Nodes publishing platform.
This library is typically used when integrating Codex into applications, automated pipelines, or services that need to publish research content at scale, without having to consider the higher complexity of the lower levels of abstraction
The Nodes CLI provides a command-line interface for interacting with Codex via the Nodes platform, enabling publishing and content management workflows without writing application code. It exposes common Nodes Lib capabilities through a developer-friendly and researcher-friendly terminal experience.
The CLI supports creating and managing nodes, pushing and pulling files, synchronizing local folders with remote nodes, and publishing research objects to Codex with dPID and DOI registration, making it suitable for both local development and production workflows.
This tool is particularly useful for researchers, data teams, and infrastructure operators who want to integrate Codex into existing workflows such as repositories, data pipelines, CI systems, or manual publishing processes.
The dPID Browser, available at dpid.org, provides a human-readable interface for exploring PIDs to content published on Codex. It allows users to resolve decentralized persistent identifiers (dPIDs), inspect versions and metadata, and navigate associated resources. Where the Nodes platform provides an opinionated user experience, the dPID browser enables exploration of the raw publication data.
While primarily intended for human exploration, it also serves as a useful reference point for understanding how published research objects are resolved and displayed.
The dPID Resolver is an open-source HTTP service that resolves dPIDs to their underlying Codex content. It serves as a bridge between conventional web-based integrations and decentralized storage, allowing access to content hosted on IPFS and Codex through ordinary HTTP requests
The resolver can be used directly or self-hosted, making it suitable for developers who need programmatic access to Codex content from existing systems or APIs.
A Codex Node is a backend service that actively participates in the network by replicating and serving publication data. Running a node contributes to the durability and availability of research objects, while enabling local access to replicated content.
Nodes are containerized and intended to run on standard infrastructure, allowing institutions or individuals to participate in maintaining the network.
Codex-Metrics: Network Observability
Codex also includes early-stage tooling for collecting and exposing network-level metrics, such as replication statistics from node deployments. This layer is intended to support monitoring, transparency, and long-term assessment of network health as the ecosystem grows.
Developers may interact with Codex at different layers depending on their use case.
Codex-Lib provides direct protocol access. Nodes-Lib supports higher-level publishing workflows. The dPID Browser and resolver enable discovery and PID resolution. Codex-Node enables participation in the network itself.
The components are intentionally modular so that users and developers can adopt and implement precisely what they need, without any additional friction.
For developers working on open science infrastructure, reproducibility tooling, or long-term data stewardship, we hope this overview provides a useful starting point and highlights new possibilities for building on decentralized research infrastructure.
If you need help, or got an idea for a scientific project, don’t hesitate to get in touch. We will explain how to make the most of these services and guide you through the implementation process.
The future of science is decentralized. Don’t stop building it.
Have our latest blogs, stories, insights and resources straight to your inbox