diff --git a/agents/agent-kit/integrate.mdx b/agents/agent-kit/integrate.mdx index eaa4dc3..2dcc009 100644 --- a/agents/agent-kit/integrate.mdx +++ b/agents/agent-kit/integrate.mdx @@ -1,8 +1,8 @@ --- title: "Integrate AgentKit" -description: "AgentKit Beta extends x402 allowing websites to enable agent traffic without falling victim to spam." +description: "AgentKit Beta extends x402, allowing websites to distinguish human-backed agents from bots and scripts." "og:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/docs-meta.png" -"og:description": "AgentKit Beta extends x402 allowing websites to enable agent traffic without falling victim to spam." +"og:description": "AgentKit Beta extends x402, allowing websites to distinguish human-backed agents from bots and scripts." "twitter:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/docs-meta.png" --- diff --git a/images/docs/human-badge-blue.svg b/images/docs/human-badge-blue.svg new file mode 100644 index 0000000..612f046 --- /dev/null +++ b/images/docs/human-badge-blue.svg @@ -0,0 +1,4 @@ + + + + diff --git a/images/docs/human-badge-gray.svg b/images/docs/human-badge-gray.svg new file mode 100644 index 0000000..082ae33 --- /dev/null +++ b/images/docs/human-badge-gray.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/mini-apps/index.mdx b/mini-apps/index.mdx index 893d8a0..30d8261 100644 --- a/mini-apps/index.mdx +++ b/mini-apps/index.mdx @@ -1,6 +1,6 @@ --- title: "What are Mini Apps?" -description: "Learn what Mini Apps are and how to build native-like apps in World App with MiniKit, distribution, and monetization." +description: "Learn what Mini Apps are and how to build native-like apps in World App with MiniKit, distribution and monetization." "og:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/mini-apps-meta.png" "og:description": "What Mini Apps are and how to build them with MiniKit." "twitter:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/mini-apps-meta.png" @@ -8,7 +8,7 @@ description: "Learn what Mini Apps are and how to build native-like apps in Worl Mini apps enable third-party developers to create native-like applications within World App. Best for small and medium sized developers who want access to a distribution channel of millions of users. -Build with flexible smart contracts and leverage World ID and the World wallet for seamless user experiences. +Build with flexible smart contracts and leverage World ID and the World Wallet for seamless user experiences. ## How it Works diff --git a/snippets/credential-hero.jsx b/snippets/credential-hero.jsx index 8a98d65..5efefe7 100644 --- a/snippets/credential-hero.jsx +++ b/snippets/credential-hero.jsx @@ -67,7 +67,7 @@ export const CredentialHero = ({ {/* Metadata table */}
{issuerName && ( -
+
@@ -100,7 +100,7 @@ export const CredentialHero = ({
)} {status && ( -
+
@@ -125,7 +125,7 @@ export const CredentialHero = ({
)} {id != null && ( -
+
@@ -138,7 +138,7 @@ export const CredentialHero = ({
)} {sybilResistance != null && ( -
+
@@ -179,7 +179,7 @@ export const CredentialHero = ({
)} {validityPeriod && ( -
+
diff --git a/tailwind.css b/tailwind.css index 36aa93e..8ad4bc3 100644 --- a/tailwind.css +++ b/tailwind.css @@ -21,6 +21,13 @@ } @layer components { + /* Tint the custom Proof of Human badge when its sidebar page is selected. */ + #sidebar-content + li[data-active] + img[src$="/images/docs/human-badge-gray.svg"] { + content: url("/images/docs/human-badge-blue.svg"); + } + /* Page content text links only (anchors without custom classes) */ .prose a:not([class]), .prose a:not([class]):hover, diff --git a/world-chain/index.mdx b/world-chain/index.mdx index d107396..c7c7812 100644 --- a/world-chain/index.mdx +++ b/world-chain/index.mdx @@ -1,6 +1,6 @@ --- title: "World Chain Overview" -description: "Overview of World Chain: a human-centric L2 with free gas for verified users, Mini Apps distribution, and sybil resistance." +description: "Overview of World Chain: a human-centric L2 with a free gas allowance for verified users, Mini Apps distribution and sybil resistance." "og:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/worldchain-meta.png" "og:description": "World Chain overview and unique primitives for developers." "twitter:image": "https://raw.githubusercontent.com/worldcoin/developer-docs/main/images/docs/worldchain-meta.png" @@ -8,7 +8,7 @@ description: "Overview of World Chain: a human-centric L2 with free gas for veri World Chain is a blockchain for humans. World chain offers several unique primitives: -- Free gas fees for all verified humans +- A free gas allowance for verified humans - Native mobile distribution to all World App users through [mini-apps](/mini-apps) - Simplified crypto transactions [through mini apps](/mini-apps/commands/verify) - Sybil resistance for developers via [World ID](/world-id) diff --git a/world-id/credentials/1.mdx b/world-id/credentials/1.mdx index 4708b12..fce0559 100644 --- a/world-id/credentials/1.mdx +++ b/world-id/credentials/1.mdx @@ -1,7 +1,6 @@ --- title: "Proof of Human (PoH)" -icon: "eye" -iconType: "duotone" +icon: "/images/docs/human-badge-gray.svg" description: "High assurance biometric credential captured by the Orb and used for uniqueness." "og:image": "https://docs.world.org/images/docs/docs-meta.png" "twitter:image": "https://docs.world.org/images/docs/docs-meta.png" @@ -27,15 +26,15 @@ import { CredentialHero } from "/snippets/credential-hero.jsx"; ## Introduction -The Proof of Human (PoH) Credential is the highest-assurance credential issued under World ID. Users obtain it by verifying at an Orb, a device that captures iris biometrics. The credential is an anonymous proof that the user is a unique, live human. +The Proof of Human (PoH) Credential is the highest-assurance credential issued under World ID. Users obtain it by verifying at an Orb, a device that captures iris biometrics by taking images of the iris. The credential is an anonymous proof that the user is a unique, live human. ## Use Cases Use the PoH Credential when you need a strong guarantee that you are interacting with a unique, live human. It is the right choice for: -- **Sybil resistance**: enforcing one account per human for airdrops, voting, rewards, or rate limiting. +- **Sybil resistance**: enforcing one account per human for airdrops, voting, rewards or rate limiting. - **High-assurance authentication**: gating sensitive actions where you need biometric confidence that you're interacting with the correct, unique human. -- **Proof of personhood**: distinguishing humans from bots, agents, and synthetic identities. +- **Proof of personhood**: distinguishing humans from bots, agents and synthetic identities. ## Credential Structure diff --git a/world-id/credentials/11.mdx b/world-id/credentials/11.mdx index c3e3fef..8e8a2a8 100644 --- a/world-id/credentials/11.mdx +++ b/world-id/credentials/11.mdx @@ -2,7 +2,7 @@ title: "Selfie Check (Beta)" icon: "camera" iconType: "duotone" -description: "A low-assurance biometric credential using the device camera for liveness and facial similarity." +description: "A medium-assurance biometric credential using the device camera for liveness and facial similarity." "og:image": "https://docs.world.org/images/docs/docs-meta.png" "twitter:image": "https://docs.world.org/images/docs/docs-meta.png" --- @@ -11,7 +11,7 @@ import { CredentialHero } from "/snippets/credential-hero.jsx"; -Once enabled, anyone with World App can use Selfie Check. No Orb, passport, or +Once enabled, anyone with World ID App can use Selfie Check. No Orb, passport or other prerequisite credential is required. ## How it works Use IDKit to integrate Selfie Check into your application. -* **On mobile (iOS/Android):** Use IDKit to generate a deep link and attach it to a "Verify" CTA. When the user taps it, they are redirected to World App to complete Selfie Check. -* **On desktop:** Use IDKit to generate a QR code and display it to the user. When the user scans it with their mobile device camera, World App launches and guides them through Selfie Check. +* **On mobile (iOS/Android):** Use IDKit to generate a deep link and attach it to a "Verify" CTA. When the user taps it, they are redirected to World ID App to complete Selfie Check. +* **On desktop:** Use IDKit to generate a QR code and display it to the user. When the user scans it with their mobile device camera, World ID App launches and guides them through Selfie Check. ## User Experience Flow 1. **Challenge:** The user initiates the flow on your app (Relying Party). -2. **Hand-off:** The user is redirected to World App. If they don't have World App installed, they are guided to download it and go straight into the Selfie Check experience. +2. **Hand-off:** The user is redirected to World ID App. If they don't have World ID App installed, they are guided to download it and go straight into the Selfie Check experience. 3. **Enrollment/Auth:** * **New User:** Enrolls with a selfie and liveness check. * **Returning User:** Completes a short camera check to verify continuity. diff --git a/world-id/idkit/credentials.mdx b/world-id/idkit/credentials.mdx index 0dddb5d..7db3ccd 100644 --- a/world-id/idkit/credentials.mdx +++ b/world-id/idkit/credentials.mdx @@ -14,7 +14,7 @@ A [Credential](https://docs.rs/world-id-primitives/latest/world_id_primitives/cr | --- | --- | --- | | Proof of Human | The user is a unique human, backed by anonymous biometric verification by the Orb. | `proofOfHuman` | | Passport | The user holds a verified NFC passport credential. | `passport` | -| Selfie Check (Beta) | A low-assurance biometric credential using the device camera for liveness and facial similarity. | `selfieCheckLegacy` | +| Selfie Check (Beta) | A medium-assurance biometric credential using the device camera for liveness and facial similarity. | `selfieCheckLegacy` | | Identity Check | An attestation that a document-backed property about the user matches your requested attributes. | `identityCheck` with attributes like `minimum_age`, `nationality`, or `document_type`. | You can also add a liveness check to any preset with `require_user_presence`. @@ -113,7 +113,7 @@ const preset = passport({ signal: "user-123" }); Once enabled, use `selfieCheckLegacy()` to request Selfie Check. The preset currently uses World ID 3.0; World ID 4.0 support is not yet available. -Anyone with World App can complete the flow—no Orb or document credential is +Anyone with World ID App can complete the flow—no Orb or document credential is required. Forward the complete IDKit result to the [verification endpoint](/api-reference/developer-portal/verify). diff --git a/world-id/idkit/integrate.mdx b/world-id/idkit/integrate.mdx index 5480ab4..894000f 100644 --- a/world-id/idkit/integrate.mdx +++ b/world-id/idkit/integrate.mdx @@ -8,19 +8,19 @@ description: "Integrate World ID into your app" import IDKitResponse from "/snippets/idkit-response.mdx"; -IDKit is the SDK for integrating World ID into your app. It handles proof requests, verification flows, and communication with the World ID app, so your backend receives a cryptographic proof of human, not personal data. +IDKit is the SDK for integrating World ID into your app. It handles proof requests, verification flows and communication with the World ID App, so your backend receives cryptographic proof of human, not personal data. -Use the React widget for drop-in integration, or the JS, Swift, and Kotlin SDKs for custom flows. For the core concepts of World ID, see [this page](/world-id/concepts). +Use the React widget for drop-in integration, or the JS, Swift and Kotlin SDKs for custom flows. For the core concepts of World ID, see [this page](/world-id/concepts). -> Tip: To integrate faster, give your coding agent the [Build with LLMs prompt](/world-id/idkit/build-with-llms) — copy it once, then paste into Claude, Cursor, or any AI coding assistant. +> Tip: To integrate faster, give your coding agent the [Build with LLMs prompt](/world-id/idkit/build-with-llms) — copy it once, then paste into Claude, Cursor or any AI coding assistant. ## How it works -Send a **proof request** through IDKit, challenging the user to prove something about themselves — such as uniqueness, document possession, or liveness — based on their [credentials](/world-id/overview#credentials). The user's World ID app generates a zero-knowledge proof without revealing personal data. Your backend then verifies the proof and stores a **nullifier** (a per-app, per-action identifier) to prevent the same person from verifying twice. +Send a **proof request** through IDKit, challenging the user to prove something about themselves — such as uniqueness, document possession or liveness — based on their [credentials](/world-id/overview#credentials). The user's World ID App generates a zero-knowledge proof without revealing personal data. Your backend then verifies the proof and stores a **nullifier** (a per-app, per-action identifier) to prevent the same person from verifying twice. IDKit integration flow -Four components are involved: your **client** (where IDKit runs), your **backend** (which signs requests and verifies proofs), the **World ID app** (on the user's device), and the **Developer Portal** (which validates proofs on-chain). The steps below cover each one. +Four components are involved: your **client** (where IDKit runs), your **backend** (which signs requests and verifies proofs), the **World ID App** (on the user's device) and the **Developer Portal** (which validates proofs on-chain). The steps below cover each one. # Step 1: Install IDKit diff --git a/world-id/overview.mdx b/world-id/overview.mdx index 1a4f2a6..fd7695f 100644 --- a/world-id/overview.mdx +++ b/world-id/overview.mdx @@ -6,17 +6,17 @@ description: "" import { Quickstart } from "/snippets/quickstart.jsx"; -World ID is a privacy-preserving protocol that lets people prove they are real and unique online without sharing personal information. +World ID is a privacy-preserving protocol that lets people prove they are real and unique online without revealing anything else about them. -It gives developers a high-assurance trust layer to stop bots, duplicate accounts, and abuse — while keeping onboarding fast and user data off your servers. +It gives developers a high-assurance trust layer to stop bots, Sybil attacks and deepfakes — while keeping onboarding fast and private, with user data off your servers. -Through credentials like Proof of Human, Document, and Selfie Check, World ID extends that trust layer with additional proofs without exposing underlying user data. +Through credentials like Proof of Human, Document and Selfie Check, World ID extends that trust layer with additional proofs without exposing underlying user data. {/* cspell:ignore worldcoin idkit orblegacy rp_context app_id rp_id selfie-check sybil PoH CAPTCHAs NFC unlinkable nullifier */} Proof of Human
-

Proof of Human

Highest-assurance uniqueness signal from Orb verification. Best for one-person-one-action flows and strong Sybil resistance.

+

Proof of Human

Highest-assurance uniqueness signal from Orb verification. Best for one-person-one-action flows and strongest Sybil resistance.

Document
-

Document

Proves possession of a unique government document through NFC checks. Useful for proof of age and document-backed access flows.

+

Document

Proves possession of a unique government document through NFC checks. Useful for fast proof of age and document-backed access flows.

Selfie Check
-

Selfie Check
Beta

Low-friction liveness and uniqueness signal from a selfie flow. Best for sign-up and bot defense where speed matters most.

+

Selfie Check
Beta

Low-friction, medium-assurance liveness and uniqueness signal from a selfie flow. Best for sign-up and bot defense where speed matters most.

@@ -64,7 +64,7 @@ Through credentials like Proof of Human, Document, and Selfie Check, World ID ex - Use proof of human to enforce one human per account and reduce Sybil abuse in rewards, referrals, governance, and account creation. + Use proof of human to enforce one human per account and reduce Sybil abuse in rewards, referrals, governance and account creation. Replace CAPTCHA-heavy or document-heavy gating with reusable proof flows. Relying parties receive proofs, not personal data. @@ -76,12 +76,12 @@ Through credentials like Proof of Human, Document, and Selfie Check, World ID ex - Users prove what is true without revealing personal information. Proofs are unlinkable across apps. + Users prove what is true without revealing personal information. World ID generates identifiers scoped to each app and action, preventing different apps from using the proofs to correlate a person’s activity. Matching and uniqueness checks are split across independent nodes so no single party holds complete sensitive data. - Proof generation happens on the user’s device. Your app receives a proof, not raw personal data. + Proof generation happens on the user’s device and can bind a developer-provided signal to the proof. Your app receives the proof, not raw personal data.