---
category: Apps
description: Building and shipping Products on the Polkadot platform, from identity setup and local development through to deployment and discovery.
page_count: 76
token_estimate: 9589
updated: '2026-06-25T12:38:13.291384+00:00'
---

## Account Management Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/account-management.md

TrUAPI Account Management method group for resolving sub-accounts, reading account state, and using @parity/product-sdk-signer to get Product accounts.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## App Development Reference
https://docs.polkadot.com/reference/apps.md

Technical reference for building Polkadot Products, including Hosts, TrUAPI between Host and Product, and the on-chain infrastructure they consume.

### Sections
- Introduction `#introduction`
- Architecture `#architecture`
- Hosts `#hosts`
- Protocol `#protocol`
- Infrastructure `#infrastructure`
- Skills `#skills`
- Where to Go Next `#where-to-go-next`

---

## Apps
https://docs.polkadot.com/apps.md

Build Polkadot Products, sandboxed apps that run inside the Polkadot Hosts, addressed by .dot domain names, and signed by the user's phone.

### Sections
- Get the Polkadot App `#get-the-polkadot-app`
- Then Pick Your Path `#then-pick-your-path`
- What Is a Polkadot Product? `#what-is-a-polkadot-product`
- Why Build a Polkadot Product? `#why-build-a-polkadot-product`

---

## Build
https://docs.polkadot.com/apps/build.md

Build Polkadot Product capabilities with product-sdk packages for signing, on-chain reads, decentralized storage, off-chain pub/sub, and local persistence.

### Sections
- Set Up Your Project `#set-up-your-project`
- Capabilities `#capabilities`
- The product-sdk Packages `#the-product-sdk-packages`
- Umbrella or Individual Packages `#umbrella-or-individual-packages`

---

## Build a Shared Todo App
https://docs.polkadot.com/apps/tutorials/shared-todo-app.md

Build a complete Polkadot Product end to end with a shared todo board that combines signing, local persistence, real-time pub/sub, and on-chain storage.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Scaffold the Project `#scaffold-the-project`
- Connect and Get an Identity `#connect-and-get-an-identity`
- Keep State on the Device `#keep-state-on-the-device`
- Share the Board in Real Time `#share-the-board-in-real-time`
- Make the Board Durable `#make-the-board-durable`
- Wire Up the Page `#wire-up-the-page`
- Run It `#run-it`
- Ship It `#ship-it`
- Where to Go Next `#where-to-go-next`

---

## Bulletin Chain Authorization
https://docs.polkadot.com/reference/apps/infrastructure/bulletin-chain/authorization.md

How writes to the Bulletin Chain are gated — the explicit per-account authorization model, the transaction-and-byte quota, and the expiration lifecycle.

### Sections
- Introduction `#introduction`
- What an Authorization Records `#what-an-authorization-records`
- What a Write Costs `#what-a-write-costs`
- Expiration `#expiration`
- Provisioning on TestNet `#provisioning-on-testnet`
- Where to Go Next `#where-to-go-next`

---

## Bulletin Chain Reference
https://docs.polkadot.com/reference/apps/infrastructure/bulletin-chain.md

Reference for the Bulletin Chain — Polkadot's decentralized, content-addressed storage layer for Products, with authorization, chunked uploads, and renewal.

### Sections
- Introduction `#introduction`
- Architecture `#architecture`
- When to Use Bulletin `#when-to-use-bulletin`
- Where to Go Next `#where-to-go-next`

---

## Bulletin Chain Renewal
https://docs.polkadot.com/reference/apps/infrastructure/bulletin-chain/renewal.md

The retention lifecycle for data on the Bulletin Chain — default window, what happens at expiration, and the mechanics of renewing data before it falls off.

### Sections
- Introduction `#introduction`
- The Default Retention Window `#the-default-retention-window`
- What Renewal Does `#what-renewal-does`
- What Renewal Costs `#what-renewal-costs`
- What Happens to Forgotten Data `#what-happens-to-forgotten-data`
- Where to Go Next `#where-to-go-next`

---

## Chain Interaction Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/chain-interaction.md

TrUAPI method group for reading chain state and subscribing to changes, behind @parity/product-sdk-chain-client and the typed PAPI API exposed per chain.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Chat in the Polkadot App
https://docs.polkadot.com/reference/apps/hosts/polkadot-app/chat.md

Reference for Polkadot App Chat, room and bot registration, typed messages, custom rendering, and how it composes Statement Store with Bulletin Chain.

### Sections
- Introduction `#introduction`
- Room and Bot Registration `#room-and-bot-registration`
- Message Types `#message-types`
- Custom Message Rendering `#custom-message-rendering`
- Message Queueing `#message-queueing`
- Composition: Statement Store + Bulletin Chain `#composition-statement-store-bulletin-chain`
- Where to Go Next `#where-to-go-next`

---

## Chat Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/chat.md

TrUAPI method group for in-App chat, including room and bot registration, typed message publishing, and custom message rendering by subscription.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Chunked Uploads on the Bulletin Chain
https://docs.polkadot.com/reference/apps/infrastructure/bulletin-chain/chunked-upload.md

How payloads larger than the per-transaction byte limit are uploaded as chunks under a DAG-PB manifest, transparently to the Product.

### Sections
- Introduction `#introduction`
- What Happens Internally `#what-happens-internally`
- What This Costs `#what-this-costs`
- What a Product Sees `#what-a-product-sees`
- Where to Go Next `#where-to-go-next`

---

## Coinage in the Polkadot App
https://docs.polkadot.com/reference/apps/hosts/polkadot-app/coinage.md

Reference for Coinage, the Polkadot App's peer-to-peer payment flow with the privacy and personhood-gating properties of the pallet-coinage primitive.

### Sections
- Introduction `#introduction`
- Conceptual Model `#conceptual-model`
- Where to Go Next `#where-to-go-next`

---

## Cross-Chain Bulletin Storage via People Chain
https://docs.polkadot.com/reference/apps/infrastructure/bulletin-chain/cross-chain.md

How a Bulletin Chain storage call initiated from the People Chain — where a Product's Proof of Personhood identity lives — reaches the Bulletin Chain via XCM.

### Sections
- Introduction `#introduction`
- The Flow `#the-flow`
- When to Use the Cross-Chain Path `#when-to-use-the-cross-chain-path`
- Where to Go Next `#where-to-go-next`

---

## Deploy Your App
https://docs.polkadot.com/apps/deploy-your-app.md

Deploy your Polkadot Product to the playground using the playground CLI — build, upload, and publish your app on-chain and register a .dot name.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Build Your App Bundle `#build-your-app-bundle`
- Deploy Your App `#deploy-your-app`
- Open Your App `#open-your-app`

---

## dotNS Architecture
https://docs.polkadot.com/reference/apps/infrastructure/dotns/architecture.md

The cooperating contracts on Asset Hub that back the dotNS registry — name records, ownership, content references, and PopRules enforcement.

### Sections
- Introduction `#introduction`
- Conceptual Responsibilities `#conceptual-responsibilities`
- Where to Go Next `#where-to-go-next`

---

## dotNS CLI Reference
https://docs.polkadot.com/reference/apps/infrastructure/dotns/cli.md

Reference for @parity/dotns-cli — the command-line tool for managing .dot name registrations, contenthash updates, transfers, and renewals.

### Sections
- Introduction `#introduction`
- Command Families `#command-families`
- Installing and Authenticating `#installing-and-authenticating`
- Command Surface `#command-surface`
- Where to Go Next `#where-to-go-next`

---

## dotNS Reference
https://docs.polkadot.com/reference/apps/infrastructure/dotns.md

Reference for dotNS — the .dot name system on Asset Hub that resolves Product names to published bundles, with PopRules pricing and contract architecture.

### Sections
- Introduction `#introduction`
- Where to Go Next `#where-to-go-next`

---

## dotNS TestNet Contracts
https://docs.polkadot.com/reference/apps/infrastructure/dotns/testnet-contracts.md

Current Paseo TestNet contract addresses for the dotNS registry — registry core, registration and pricing, and lifecycle contract families.

### Sections
- Introduction `#introduction`
- Contract Address Table `#contract-address-table`
- How to Use These Addresses `#how-to-use-these-addresses`
- Where to Go Next `#where-to-go-next`

---

## Entropy Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/entropy.md

TrUAPI method group for deriving deterministic per-Product entropy from the user's root key, suitable for seeding Product-local key material.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Get TestNet Tokens
https://docs.polkadot.com/apps/get-started/get-testnet-tokens.md

Claim TestNet tokens from the Polkadot Faucet and unlock per-service allowances for Bulletin Chain, Statement Store, and dotNS.

### Sections
- Prerequisites `#prerequisites`
- Get Tokens `#get-tokens`
- Service Allowances `#service-allowances`
- Where to Go Next `#where-to-go-next`

---

## HOP Recipient Journey
https://docs.polkadot.com/reference/apps/infrastructure/hop/recipient.md

The receiving side of a HOP transfer — observing the incoming hop on the destination chain, validating the proof, and settling the resulting state.

### Sections
- Introduction `#introduction`
- The Flow at a Glance `#the-flow-at-a-glance`
- What the Recipient's Product Sees `#what-the-recipients-product-sees`
- Where to Go Next `#where-to-go-next`

---

## HOP Reference
https://docs.polkadot.com/reference/apps/infrastructure/hop.md

Reference for HOP — Polkadot's cross-chain hop protocol that moves assets and messages between chains, with current maturity-state caveats clearly flagged.

### Sections
- Introduction `#introduction`
- Where HOP Fits `#where-hop-fits`
- Where to Go Next `#where-to-go-next`

---

## HOP Sender Journey
https://docs.polkadot.com/reference/apps/infrastructure/hop/sender.md

The sender side of a HOP transfer — dispatching a multi-hop send, tracking it as it routes through intermediate chains, and observing the final outcome.

### Sections
- Introduction `#introduction`
- The Flow at a Glance `#the-flow-at-a-glance`
- What Can Go Wrong `#what-can-go-wrong`
- Where to Go Next `#where-to-go-next`

---

## Host API on Polkadot Web
https://docs.polkadot.com/reference/apps/hosts/polkadot-web/host-api.md

Reference for the TrUAPI Host API surface exposed by Polkadot Web, including shared Desktop behavior and where browser-context behavior differs.

### Sections
- Introduction `#introduction`
- What Is the Same `#what-is-the-same`
- Where Browser-Context Differs `#where-browser-context-differs`
- Where to Go Next `#where-to-go-next`

---

## How HOP Works
https://docs.polkadot.com/reference/apps/infrastructure/hop/how-it-works.md

The HOP protocol's conceptual model — what a hop is, how multi-hop routing is constructed, and how the verifier model proves cross-chain correctness.

### Sections
- Introduction `#introduction`
- What a Single Hop Is `#what-a-single-hop-is`
- How Multi-Hop Routing Is Constructed `#how-multi-hop-routing-is-constructed`
- The Verifier Model `#the-verifier-model`
- What a Product Sees `#what-a-product-sees`
- Where to Go Next `#where-to-go-next`

---

## Install Polkadot Desktop and Pair
https://docs.polkadot.com/apps/get-started.md

Install Polkadot Desktop, pair it with the Polkadot App on your phone with a QR scan, and set up the foundation for local Polkadot Product development.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install Polkadot Desktop `#install-polkadot-desktop`
- Pair Polkadot Desktop with the Polkadot App `#pair-polkadot-desktop-with-the-polkadot-app`
- Where to Go Next `#where-to-go-next`

---

## Local Storage Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/local-storage.md

TrUAPI Local Storage method group for per-Product, per-device key-value persistence, Host-managed namespaces, JSON helpers, and KvStore use.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Name Transfers
https://docs.polkadot.com/reference/apps/infrastructure/dotns/transfer.md

Transferring ownership of a .dot name to another account — the flow, the validation rules, and what changes on the new owner's side.

### Sections
- Introduction `#introduction`
- What Changes on Transfer `#what-changes-on-transfer`
- When the Tier Lock Matters `#when-the-tier-lock-matters`
- What a Product Should Know `#what-a-product-should-know`
- Where to Go Next `#where-to-go-next`

---

## On-Chain polkadot.com
https://docs.polkadot.com/reference/apps/hosts/polkadot-web/onchain-polkadot-com.md

Reference for the on-chain-published presence backing polkadot.com discovery, a Polkadot Product that indexes and points at other Polkadot Products.

### Sections
- Introduction `#introduction`
- Why an On-Chain Discovery Layer `#why-an-on-chain-discovery-layer`
- Implications for a Product Developer `#implications-for-a-product-developer`
- Where to Go Next `#where-to-go-next`

---

## pallet-coinage Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-coinage.md

The PoP pallet behind the Polkadot App's Coinage feature — personhood-aware peer-to-peer payments with privacy properties beyond a standard Balances transfer.

### Sections
- Introduction `#introduction`
- Conceptual Surface `#conceptual-surface`
- Relationship to Coinage in the App `#relationship-to-coinage-in-the-app`
- Pallet Surface `#pallet-surface`
- Where to Go Next `#where-to-go-next`

---

## pallet-game Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-game.md

The PoP pallet for personhood-gated on-chain games and randomized selection — fair-draw mechanics that rely on Ring-VRF aliases for unique participation.

### Sections
- Introduction `#introduction`
- What the Pallet Guarantees `#what-the-pallet-guarantees`
- What a Product Uses It For `#what-a-product-uses-it-for`
- Where to Go Next `#where-to-go-next`

---

## pallet-identity Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-identity.md

The People Chain identity record associated with a PoP account — what it stores, how it relates to aliases, and how a Product reads from it.

### Sections
- Introduction `#introduction`
- What the Pallet Records `#what-the-pallet-records`
- Identity vs. Aliases `#identity-vs-aliases`
- When to Use From a Product `#when-to-use-from-a-product`
- Where to Go Next `#where-to-go-next`

---

## pallet-people Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-people.md

The foundational Proof of Personhood pallet — personhood registration, ring membership, alias issuance, and the under_alias runtime origin.

### Sections
- Introduction `#introduction`
- Ring Membership `#ring-membership`
- Alias Issuance `#alias-issuance`
- `under_alias` Dispatch `#under_alias-dispatch`
- Pallets That Depend on This One `#pallets-that-depend-on-this-one`
- Where to Go Next `#where-to-go-next`

---

## pallet-score Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-score.md

The PoP pallet for personhood-anchored reputation and scoring — per-alias scores that accumulate while staying unlinkable to user accounts.

### Sections
- Introduction `#introduction`
- What the Pallet Records `#what-the-pallet-records`
- Read and Write Paths `#read-and-write-paths`
- Use Cases `#use-cases`
- Where to Go Next `#where-to-go-next`

---

## pallet-ubc Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop/pallet-ubc.md

The Universal Basic Capacity pallet — per-person on-chain capacity primitives, including the periodic fee-free transaction quota for verified persons.

### Sections
- Introduction `#introduction`
- What the Pallet Provides `#what-the-pallet-provides`
- When a Product Reaches for UBC `#when-a-product-reaches-for-ubc`
- Eligibility Constraints `#eligibility-constraints`
- Where to Go Next `#where-to-go-next`

---

## Payment Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/payment.md

TrUAPI method group for payment flows, including the standard Balances transfer surface and the Pocket peer-to-peer flow for Product payments.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Permissions in Polkadot Desktop
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop/permissions.md

Reference for how Polkadot Desktop enforces sandbox permissions a Product declares, including capability types, manifest declaration, and denial UX.

### Sections
- Introduction `#introduction`
- Capability Types `#capability-types`
- Declaring Permissions `#declaring-permissions`
- Denial UX `#denial-ux`
- Where to Go Next `#where-to-go-next`

---

## Permissions Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/permissions.md

TrUAPI method group for declaring, querying, and gating on Product capabilities, including the ChainSubmit, ExternalRequest, and Microphone surfaces.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Persist Data Locally
https://docs.polkadot.com/apps/build/persist-data-locally.md

Learn how to store and retrieve application data between sessions in a Polkadot Product using the @parity/product-sdk-local-storage package.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install the SDK `#install-the-sdk`
- Initialize the Store `#initialize-the-store`
- Store String Values `#store-string-values`
- Store JSON Values `#store-json-values`
- Remove Stored Values `#remove-stored-values`
- Namespace Keys with Prefixes `#namespace-keys-with-prefixes`
- Use React Hooks `#use-react-hooks`
- Limitations `#limitations`
- Where to Go Next `#where-to-go-next`

---

## Pocket Recipient in the Polkadot App
https://docs.polkadot.com/reference/apps/hosts/polkadot-app/pocket.md

Reference for how the Polkadot App receives a Pocket transfer initiated from Desktop, including the recipient-side flow for funds or assets.

### Sections
- Introduction `#introduction`
- Conceptual Model `#conceptual-model`
- Where to Go Next `#where-to-go-next`

---

## Pocket Send Flow in Polkadot Desktop
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop/pocket.md

Reference for Pocket, Polkadot Desktop's peer-to-peer send flow with personhood-aware addressing, and how it pairs with the App-side recipient view.

### Sections
- Introduction `#introduction`
- Conceptual Model `#conceptual-model`
- What the User Sees `#what-the-user-sees`
- Where to Go Next `#where-to-go-next`

---

## Polkadot App Reference
https://docs.polkadot.com/reference/apps/hosts/polkadot-app.md

Reference for the Polkadot App, the mobile Host in the Triangle that holds the user's signing key, runs PoP, and approves every Product transaction.

### Sections
- Introduction `#introduction`
- How It Works `#how-it-works`
- Where the App Fits in the SDK Surface `#where-the-app-fits-in-the-sdk-surface`
- Where to Go Next `#where-to-go-next`

---

## Polkadot Desktop Reference
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop.md

Reference for Polkadot Desktop, the desktop Host that loads Products by .dot name, mediates signing to the App, and enforces sandbox permissions.

### Sections
- Introduction `#introduction`
- How It Works `#how-it-works`
- Where Desktop Fits in the SDK Surface `#where-desktop-fits-in-the-sdk-surface`
- Where to Go Next `#where-to-go-next`

---

## Polkadot Product Skills
https://docs.polkadot.com/reference/apps/skills.md

Reference for the product-sdk skills — modular instructions that teach an AI agent how to work effectively across the Polkadot Products stack.

### Sections
- Introduction `#introduction`
- Skills List `#skills-list`
- How to Install `#how-to-install`
- Updating `#updating`
- Where to Go Next `#where-to-go-next`

---

## Polkadot Web Reference
https://docs.polkadot.com/reference/apps/hosts/polkadot-web.md

Reference for Polkadot Web (dot.li), the browser-based Host that loads Polkadot Products by their .dot name without requiring a desktop installation.

### Sections
- Introduction `#introduction`
- Architecture `#architecture`
- Visiting and Shield States `#visiting-and-shield-states`
- Host API on Web `#host-api-on-web`
- On-Chain `polkadot.com` `#on-chain-polkadotcom`
- Upload Journeys `#upload-journeys`
- Where to Go Next `#where-to-go-next`

---

## PopRules and dotNS Pricing
https://docs.polkadot.com/reference/apps/infrastructure/dotns/poprules-pricing.md

The pricing ladder for .dot name registration — who can register what name length at what cost, organized by PoP tier and suffix shape.

### Sections
- Introduction `#introduction`
- The Two PoP Tiers `#the-two-pop-tiers`
- The Pricing Ladder `#the-pricing-ladder`
- Lite → Full Migration Reservation `#lite-full-migration-reservation`
- Where to Go Next `#where-to-go-next`

---

## Preimage Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/preimage.md

TrUAPI method group for submitting off-chain content that on-chain operations dereference by hash, with preimage and Statement Store distinction.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Preimage Submission via Polkadot Desktop
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop/preimage.md

Reference for how Polkadot Desktop mediates preimage submission for Products, and the Statement vs Preimage distinction for off-chain content.

### Sections
- Introduction `#introduction`
- What the Preimage Surface Does `#what-the-preimage-surface-does`
- Statement vs Preimage `#statement-vs-preimage`
- Where to Go Next `#where-to-go-next`

---

## Proof of Personhood in the Polkadot App
https://docs.polkadot.com/reference/apps/hosts/polkadot-app/pop.md

Reference for how the Polkadot App runs Proof of Personhood, with biometric verification, Ring-VRF aliases on People Chain, and the PoP tier model.

### Sections
- Introduction `#introduction`
- Ring-VRF Aliases `#ring-vrf-aliases`
- PoP Tiers: Full vs. Lite `#pop-tiers-full-vs-lite`
- What This Unlocks for a Product `#what-this-unlocks-for-a-product`
- Where to Go Next `#where-to-go-next`

---

## Proof of Personhood Reference
https://docs.polkadot.com/reference/apps/infrastructure/pop.md

Reference for Polkadot's Proof of Personhood infrastructure — Ring-VRF and aliases, plus per-pallet documentation for the pallets that gate logic on personhood.

### Sections
- Introduction `#introduction`
- The Mechanism `#the-mechanism`
- The Pallets `#the-pallets`
- Where to Go Next `#where-to-go-next`

---

## Publish and Subscribe to Off-Chain Data
https://docs.polkadot.com/apps/build/pub-sub-off-chain-data.md

Publish and subscribe to off-chain data from a Polkadot Product using the Statement Store. Filter by topic, publish statements, and use channels.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install the SDK `#install-the-sdk`
- Set Up Your Statement Store Client `#set-up-your-statement-store-client`
- Subscribe to Incoming Statements `#subscribe-to-incoming-statements`
- Publish a Typed Statement `#publish-a-typed-statement`
- Use a Channel for Last-Write-Wins State `#use-a-channel-for-last-write-wins-state`
- Where to Go Next `#where-to-go-next`

---

## Quick Start with RevX
https://docs.polkadot.com/apps/quick-start.md

Generate and publish a Polkadot Product from the browser with RevX App Builder, then sign the final .dot deployment with the Polkadot App.

### Sections
- Prerequisites `#prerequisites`
- Open RevX `#open-revx`
- Open App Builder `#open-app-builder`
- Create a New App `#create-a-new-app`
- Configure the Builder `#configure-the-builder`
- Generate an App `#generate-an-app`
- Inspect the Generated Code `#inspect-the-generated-code`
- Publish to `.dot` `#publish-to-dot`
- Where to Go Next `#where-to-go-next`

---

## Quick Start with the CLI
https://docs.polkadot.com/apps/quick-start-cli.md

Install playground-cli, pair it with the Polkadot App, build your Product, and deploy it to a live .dot name from the terminal.

### Sections
- Prerequisites `#prerequisites`
- Install the CLI `#install-the-cli`
- Initialize `#initialize`
- Build `#build`
- Deploy `#deploy`
- Where to Go Next `#where-to-go-next`

---

## Read On-Chain Data
https://docs.polkadot.com/apps/build/read-chain-state.md

Connect a Polkadot Product to one or more chains and read storage, constants, and account state using the @parity/product-sdk-chain-client package.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install the SDK `#install-the-sdk`
- Connect to a Chain `#connect-to-a-chain`
- Connect Using a Preset `#connect-using-a-preset`
- Connect Using Custom Descriptors (BYOD) `#connect-using-custom-descriptors-byod`
- Read Storage and Constants `#read-storage-and-constants`
- Read Multiple Chains in Parallel `#read-multiple-chains-in-parallel`
- Access the Raw PAPI Client `#access-the-raw-papi-client`
- Detect Whether You Are Inside a Host `#detect-whether-you-are-inside-a-host`
- Clean Up Connections `#clean-up-connections`
- Limitations `#limitations`
- Where to Go Next `#where-to-go-next`

---

## Ring-VRF and Aliases
https://docs.polkadot.com/reference/apps/infrastructure/pop/ring-vrf-and-aliases.md

How Polkadot's Proof of Personhood produces unlinkable per-Product aliases with Ring-VRF, and how under_alias lets pallets gate on aliases.

### Sections
- Introduction `#introduction`
- What PoP Produces `#what-pop-produces`
- What an Alias Is `#what-an-alias-is`
- The `under_alias` Runtime Origin `#the-under_alias-runtime-origin`
- Cross-Product Aliases `#cross-product-aliases`
- Where to Go Next `#where-to-go-next`

---

## Sandbox and Sub-Accounts in TrUAPI
https://docs.polkadot.com/reference/apps/protocol/truapi/sandbox.md

Why a Polkadot Product gets a per-domain sub-account, why the Host API is the only egress, and how permissions selectively relax that isolation.

### Sections
- Introduction `#introduction`
- Why Derived Sub-Accounts, Not Root Identity `#why-derived-sub-accounts-not-root-identity`
- Why the Host API Is the Only Egress `#why-the-host-api-is-the-only-egress`
- How Permissions Selectively Relax Isolation `#how-permissions-selectively-relax-isolation`
- Where to Go Next `#where-to-go-next`

---

## Shield States in Polkadot Web
https://docs.polkadot.com/reference/apps/hosts/polkadot-web/shield-states.md

Reference for the shield-state UI in Polkadot Web, including how the Host surfaces the trust posture of the loaded Product and what each state means.

### Sections
- Introduction `#introduction`
- Conceptual Model `#conceptual-model`
- Why Products Should Care `#why-products-should-care`
- Where to Go Next `#where-to-go-next`

---

## Sign and Submit Transactions
https://docs.polkadot.com/apps/build/sign-and-submit.md

Derive product-scoped accounts and sign transactions from a Polkadot Product using the Product SDK, with all approvals routed to the Polkadot App.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install the SDK `#install-the-sdk`
- How Product Accounts Work `#how-product-accounts-work`
- Set Up Signer Manager `#set-up-signer-manager`
- Connect to the Host `#connect-to-the-host`
- Get a Product Account `#get-a-product-account`
- Sign Arbitrary Bytes `#sign-arbitrary-bytes`
- Sign and Submit a Transaction `#sign-and-submit-a-transaction`
- Handle Signing Errors `#handle-signing-errors`
- Test Without a Host `#test-without-a-host`
- Limitations `#limitations`
- Where to Go Next `#where-to-go-next`

---

## Sign In with Polkadot
https://docs.polkadot.com/reference/apps/hosts/polkadot-app/sign-in.md

Reference for Sign In with Polkadot, the Host-level authentication handshake between Polkadot Desktop or Polkadot Web and the paired Polkadot App.

### Sections
- Introduction `#introduction`
- How the Handshake Works `#how-the-handshake-works`
- Where Sign In Differs from Per-Transaction Signing `#where-sign-in-differs-from-per-transaction-signing`
- Where to Go Next `#where-to-go-next`

---

## Signing in Polkadot Desktop
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop/signing.md

Reference for how Polkadot Desktop mediates transaction signing, including the App signer, ChainSubmit permission, approval, timeout, and rejection.

### Sections
- Introduction `#introduction`
- The Three-Actor Model `#the-three-actor-model`
- `ChainSubmit`: Ability to Request ≠ Auto-Sign `#chainsubmit-ability-to-request-auto-sign`
- What the User Sees `#what-the-user-sees`
- Asynchronous Approval and Timeouts `#asynchronous-approval-and-timeouts`
- Where to Go Next `#where-to-go-next`

---

## Signing Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/signing.md

TrUAPI method group for dispatching transactions through the Host to the paired Polkadot App for per-transaction approval, signing, and results.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Auto-Signing `#auto-signing`
- Where to Go Next `#where-to-go-next`

---

## Statement Lifecycle
https://docs.polkadot.com/reference/apps/infrastructure/statement-store/lifecycle.md

How a Statement Store submission moves through validation, gossip propagation, TTL expiry, and eviction — and what each step guarantees.

### Sections
- Introduction `#introduction`
- The Five Steps `#the-five-steps`
- What Each Step Guarantees `#what-each-step-guarantees`
- On-Chain Trigger (Forthcoming) `#on-chain-trigger-forthcoming`
- Where to Go Next `#where-to-go-next`

---

## Statement Store Allowance
https://docs.polkadot.com/reference/apps/infrastructure/statement-store/allowance.md

How per-account statement quota is enforced — max_count for live statements and max_size for total bytes — and why submissions are gated rather than fee-priced.

### Sections
- Introduction `#introduction`
- What an Allowance Records `#what-an-allowance-records`
- How the Limits Interact `#how-the-limits-interact`
- Per-Statement Size Limit `#per-statement-size-limit`
- Provisioning on TestNet `#provisioning-on-testnet`
- Where to Go Next `#where-to-go-next`

---

## Statement Store Channels
https://docs.polkadot.com/reference/apps/infrastructure/statement-store/channels.md

The last-write-wins primitive on top of statements — a channel field causes the pallet to replace older entries from the same account on the same channel.

### Sections
- Introduction `#introduction`
- When to Reach for Channels `#when-to-reach-for-channels`
- Scope and Replacement Rules `#scope-and-replacement-rules`
- The Channel-Store API `#the-channel-store-api`
- Where to Go Next `#where-to-go-next`

---

## Statement Store Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/statement-store.md

TrUAPI method group for publishing and subscribing to gossip-distributed signed statements on the People Chain through the Host and SDK client.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## Statement Store Reference
https://docs.polkadot.com/reference/apps/infrastructure/statement-store.md

Reference for the Statement Store — Polkadot's network-layer pub/sub primitive on the People Chain, with on-chain rules and off-chain payloads via gossip.

### Sections
- Introduction `#introduction`
- How a Statement Reaches Subscribers `#how-a-statement-reaches-subscribers`
- Delivery Semantics `#delivery-semantics`
- Where to Go Next `#where-to-go-next`

---

## Statement Store Subscriptions
https://docs.polkadot.com/reference/apps/infrastructure/statement-store/subscriptions.md

How a subscriber registers a topic filter against the People Chain node — primary topic, optional secondary topic, dedup behavior, and unsubscription.

### Sections
- Introduction `#introduction`
- How Topics Filter `#how-topics-filter`
- What the Callback Receives `#what-the-callback-receives`
- Subscription Lifecycle `#subscription-lifecycle`
- Initial-State Behavior `#initial-state-behavior`
- Where to Go Next `#where-to-go-next`

---

## Statement Store via Polkadot Desktop's Host API
https://docs.polkadot.com/reference/apps/hosts/polkadot-desktop/statement-store.md

Reference for how Polkadot Desktop mediates Statement Store access, including proof routing, account context, and Bulletin Chain composition pattern.

### Sections
- Introduction `#introduction`
- What Desktop Adds `#what-desktop-adds`
- What Desktop Does Not Do `#what-desktop-does-not-do`
- Composition with the Bulletin Chain `#composition-with-the-bulletin-chain`
- Where to Go Next `#where-to-go-next`

---

## Store Data on Chain
https://docs.polkadot.com/apps/build/store-data-on-chain.md

Store and retrieve Bulletin Chain data from a Polkadot Product, Hello World, larger files, renewal, cross-chain via People Chain, preimage-authorized uploads.

### Sections
- Introduction `#introduction`
- Prerequisites `#prerequisites`
- Install the SDK `#install-the-sdk`
- Set Up Your Storage Client `#set-up-your-storage-client`
- Store a Hello World `#store-a-hello-world`
- Retrieve Your Data `#retrieve-your-data`
- Store a Larger File `#store-a-larger-file`
- Get Authorization `#get-authorization`
- Renew Long-Lived Data `#renew-long-lived-data`
- Cross-Chain Storage from People Chain `#cross-chain-storage-from-people-chain`
- Submit a Preimage `#submit-a-preimage`
- Storage Paths at a Glance `#storage-paths-at-a-glance`
- Where to Go Next `#where-to-go-next`

---

## The .dot Name Mechanism
https://docs.polkadot.com/reference/apps/infrastructure/dotns/name-mechanism.md

How a .dot name resolves to a Polkadot Product — namehash derivation, contenthash to CID mapping, and the IPFS gateway and Bulletin Chain delivery path.

### Sections
- Introduction `#introduction`
- Layer 1: The Registry on Asset Hub `#layer-1-the-registry-on-asset-hub`
- Layer 2: Namehash Derivation `#layer-2-namehash-derivation`
- Layer 3: `contenthash` → CID `#layer-3-contenthash-cid`
- Layer 4: Delivery (IPFS Gateway or Bulletin Peer-to-Peer) `#layer-4-delivery-ipfs-gateway-or-bulletin-peer-to-peer`
- End-to-End Resolution `#end-to-end-resolution`
- Where to Go Next `#where-to-go-next`

---

## TrUAPI Calls Method Group
https://docs.polkadot.com/reference/apps/protocol/truapi/calls.md

The lifecycle calls a Product uses to identify itself to its Host, the Host capability introduction, and the setup every TrUAPI group relies on.

### Sections
- Introduction `#introduction`
- Conceptual Contract `#conceptual-contract`
- Where to Go Next `#where-to-go-next`

---

## TrUAPI Packages
https://docs.polkadot.com/reference/apps/protocol/truapi/packages.md

Which SDK package wraps which TrUAPI method group, and where the boundary between Product code and Host code lives in the package reference.

### Sections
- Introduction `#introduction`
- Package Map `#package-map`
- The Boundary Between Product Code and Host Code `#the-boundary-between-product-code-and-host-code`
- Where to Go Next `#where-to-go-next`

---

## TrUAPI Reference
https://docs.polkadot.com/reference/apps/protocol/truapi.md

TrUAPI is the protocol between Polkadot Hosts and the Products that run inside them, covering signing, chain interaction, storage, and messaging.

### Sections
- Introduction `#introduction`
- Two Audiences `#two-audiences`
- The Eleven Method Groups `#the-eleven-method-groups`
- High-Level Diagram `#high-level-diagram`
- Where to Go Next `#where-to-go-next`

---

## TrUAPI Versioning
https://docs.polkadot.com/reference/apps/protocol/truapi/versioning.md

How TrUAPI versions evolve, what compatibility a Product can rely on across Host versions, and how to target a specific version range safely.

### Sections
- Introduction `#introduction`
- What a Version Number Identifies `#what-a-version-number-identifies`
- What a Product Targets `#what-a-product-targets`
- How the SDK Maps to Versions `#how-the-sdk-maps-to-versions`
- Where to Go Next `#where-to-go-next`

---

## Visiting a Product on Polkadot Web
https://docs.polkadot.com/reference/apps/hosts/polkadot-web/visiting.md

How Polkadot Web resolves a .dot name and loads the resulting Product inside a browser tab, including the visiting flow that differs from Desktop.

### Sections
- Introduction `#introduction`
- The Visiting Flow `#the-visiting-flow`
- How This Differs from Polkadot Desktop `#how-this-differs-from-polkadot-desktop`
- Where to Go Next `#where-to-go-next`
