Skip to main content
You want to start building on the DATA Foundation quickly… so let’s get started!
The DATA Foundation

Add Network

Enable DATA Foundation’s mainnet or testnet for your wallet.

Add DATA Network

Connect your wallet to DATA Network.

Add Aeneid testnet

Connect your wallet to the Aeneid testnet.

Skip everything. Go to the code.

TypeScript Code Example

This is a clone-able quickstart for you to check out. You can clone it directly and follow the associated README.

React Quickstart

This is a clone-able quickstart for you to check out. You can clone it directly and follow the associated README.

Smart Contract Code Example

This is a boilerplate for you to check out. You can clone it directly, study the example smart contracts, and follow the associated README for running the tests.

DATA Network Infra

See Network Info for all RPC, explorer, and faucet info.

Use Our SDKs

For confidential data, 🔒 Confidential Data Rails (CDR) is the primary way to encrypt, store, and gate access to data on the DATA Foundation. Start with the CDR SDK Guide (@piplabs/cdr-sdk). For IP and licensing, check out the entire SDK Reference to see an explanation + example for every function in our 🛠️ TypeScript SDK (can use this in React as well) and 🐍 Python SDK. We have also built a 🛠️ TypeScript SDK Guide, a step-by-step walkthrough for registering IP and attaching licenses.

Deployed Smart Contracts

Check out the addresses for the deployed smart contracts here. Note that there are two different kinds of contracts:
  • DATA Foundation Core - This repository contains the core protocol logic, consisting of a thin IP registry (the IP Asset Registry), a set of modules defining logic around 📜 Licensing, and a module manager for administering module and user access control.
  • DATA Foundation Periphery- Whereas the core contracts deal with the underlying protocol logic, the periphery contracts deal with protocol extensions that greatly increase UX and simplify IPA management. This is mostly handled through the 📦 SPG.

Use Our API

Check out the entire API Reference for learning how to use our API. For common things like fetching gas price, average block time, market cap, token price, and more, check out the Blockscout API.

Register IP on the DATA Foundation

Let’s start with the most basic question: “What does it take to register IP on the DATA Foundation in my app? How do I do this?” To register IP on the DATA Foundation, you’ll first need an NFT. If your IP is an ERC-721 NFT (ex. an Azuki or Pudgy Penguin on the DATA Foundation), you’re already set. If not, you must mint an NFT to represent your off-chain IP. And don’t worry, we’ll help you do this in the following tutorials. Next you’d register that NFT on the DATA Foundation, ultimately creating an 🧩 IP Asset. An “IP Asset” is your IP registered on the DATA Foundation, empowered by: Follow the below tutorials to register IP on the DATA Foundation:

Using the SDK

Learn how to register IP on the DATA Foundation using the TypeScript SDK.

Using the Smart Contracts

Learn how to register IP on the DATA Foundation using the Smart Contracts.

Difference Between IP Metadata vs. NFT Metadata

A common question we get from developers while registering their IP on the DATA Foundation is: “What metadata should be/is expected to be attached to the NFT, and then separately, the IP Asset?” To answer that question, please see NFT vs. IP Metadata.

Licensing Your IP

You may be wondering, “How do I take advantage of the DATA Foundation’s on-chain licensing? How do I make sure my registered IP has a license ready to go?” Before you attach any sort of licenses or license terms to your 🧩 IP Asset, it would be best to first understand what the 💊 Programmable IP License (PIL) actually is. This “PIL” is what defines the available License Terms on the DATA Foundation, which in turn - when attached to an IP Asset - is what defines how others can use (commercially, create derivatives, etc) that IP Asset. Our tutorials will show you exactly how to attach license terms to your IP Asset:

Using the SDK

Learn how to attach license terms to your IP on the DATA Foundation using the TypeScript SDK.

Using the Smart Contracts

Learn how to attach license terms to your IP on the DATA Foundation using the Smart Contracts.
For more information on licensing and the terminology behind it, check out the 📜 Licensing Module.

Gate the License Token to Confidential Data

The License Token you minted above is the key primitive CDR uses for IP-gated content: you can encrypt data with Confidential Data Rails (CDR) and require a wallet to hold a License Token for a given IP Asset before it can decrypt. This ties confidential data directly to the on-chain licensing terms you defined.

IP-gated data with CDR

Encrypt data and gate decryption on holding a License Token.

CDR SDK Setup

Install the CDR SDK and run your first encrypt/decrypt flow.

Prove Data Provenance With Trace

If you’re a data provider, Trace gives you verifiable, provider-normalized provenance for the data you handle (content hashes, contributor consent, and KYC signals, with public audit views) through a simple REST integration.

Trace Overview

Understand how Trace records and audits data provenance.

Trace Integration Guide

The full write, read, and search API for providers.