End-to-end lifecycle
This is the full Nibgate chain from creator setup to public discovery, analytics, earnings, and reputation.
The creator site remains the source of truth. Nibgate verifies the source, indexes metadata and receipts, and builds discovery/reputation around that creator-owned content.
Flow summary
creator wallet
-> verified site
-> package-installed content
-> public metadata
-> Explore discovery
-> creator-site unlock/payment
-> receipt indexed by Nibgate
-> rating eligibility
-> rating proof/event
-> content/site/creator reputation
-> dashboard + leaderboardsStep-by-step
Creator signs into the hub
The creator connects a wallet on nibgate.xyz. That wallet becomes the creator account for profile, sites, contents, analytics, earnings, and reputation.
Creator registers a site
The creator adds a domain in the dashboard. Nibgate creates a siteId, public verification token, and widget script.
A creator should only register a domain they control.
Creator adds the widget
The creator pastes the widget into their site HTML.
<script
async
src="https://www.nibgate.xyz/widget.js"
data-nibgate-site="SITE_ID"
data-nibgate-token="PUBLIC_SITE_TOKEN"
data-nibgate-api="https://api.nibgate.xyz"
></script>Nibgate checks the homepage for the data-nibgate-site widget marker with the site id. If found, the site becomes verified. (Event ingestion separately validates the site token.)
Creator installs the package
Inside the creator site/app:
npm install @nibgate/sdkThe package is used where paid content lives.
Creator defines content
The creator marks resources as gated content.
import { createGate } from "@nibgate/sdk"
const guide = createGate({
id: "premium-guide",
title: "Premium Guide",
type: "article",
price: "0.01",
currency: "USDC",
path: "/premium-guide",
access: {
humans: "paid",
agents: "paid"
},
unlock: {
mode: "one_time"
}
})The protected content stays on the creator site. Nibgate stores public metadata for discovery, not the private paid file itself.
Package reports content metadata
The package/widget sends metadata to Nibgate: content id, type, title, route, price, tags, image, verified site, and creator wallet.
This lets the content appear in dashboard contents, Explore, search, categories, and leaderboards.
Viewer or agent discovers content
A human or AI agent finds the content on Explore, leaderboards, creator profiles, site pages, search, or category filters.
Public cards can show type, title, creator/site, price, thumbnail, unlock signals, and content reputation stars.
Viewer opens the creator site
The viewer follows the content route back to the creator-owned domain. Nibgate does not host the protected content.
Creator site handles unlock/payment
Unlock remains creator-site native. The site can use x402, Gateway, direct wallet payment, Arc testnet, or another supported payment rail.
The creator site/package controls receiver address, price, payment verification, and unlock access. Nibgate does not custody funds.
For the MVP, the unlock mode is one_time: one verified payment unlocks the resource. Later versions can add metered streaming, metered reading, time passes, or agent quotas without moving the content away from the creator origin.
Package reports unlock/payment receipt
After payment succeeds, the receipt is reported to Nibgate. This happens automatically in two ways:
Browser unlock — the widget or SDK calls unlockCompleted() which sends a tracking event to the Hub.
Server-side x402 unlock — accessResponse() and payAndUnlockResponse() call emitHubEvent() after successful gateway payment, sending payment_completed and unlock_completed events to the Hub automatically.
guide.unlockCompleted({
payer: "0x...", // buyer wallet (also accepts walletAddress | buyer | account | address)
paymentProvider: "x402",
txHash: "0x...",
receiptUrl: "https://...", // gateway/provider receipt reference
amount: "0.01",
currency: "USDC"
})For server-side events to reach the Hub, the creator site must have NIBGATE_SITE_ID, NIBGATE_SITE_TOKEN, and NIBGATE_API_BASE set. Without these, x402 payments still process and return unlock proofs, but unlock counts and volume on Explore will not update.
Nibgate indexes the content id, site id, creator wallet, buyer wallet when available, provider, receipt reference, amount, and timestamp.
Buyer or agent becomes eligible to rate
Rule:
No verified unlock receipt -> no ratingOnce the receipt is indexed and verified, that wallet or agent becomes eligible to rate the content.
Rating is submitted
The eligible wallet signs a deterministic Nibgate rating message in the MVP. Later, that can become an onchain rating transaction indexed by Nibgate. Analytics events can support ranking and context, but signed/onchain proof is what should drive trust.
Reputation updates
Nibgate indexes rating signals and computes:
- content reputation as
0.0-5.0stars - site reputation as
1-100 - creator reputation as
1-100
Creator dashboard updates
The dashboard updates profile reputation, verified site health, tracked content, analytics, earnings receipts, and content reputation.
Explore and leaderboards update
Public discovery updates with fresh content cards, category filtering, search, creator/site/content leaderboards, and reputation rankings.
One-line version
Creator installs package -> verifies site -> publishes metadata -> users/agents discover on Nibgate -> one-time unlock on creator site -> package reports receipt -> eligible wallets rate -> Nibgate indexes reputation -> Explore, leaderboards, and dashboard update.