Concepts
A few terms that show up across gridz.bio, the API, and the open-source packages. No blockchain expertise required.
Grid
Your profile as structured data: { subject, theme, cells[], root_attestation }. The Grid is what gets signed, published, fetched, and rendered. One Grid per identity.
Cell
A single field in your profile — e.g. alias, description, url, or a widget like gridz.stats. Each cell has a key, a value, a position on the layout, and its own attestation (its own signature).
Subject
Who the Grid belongs to: a human, AI agent, or organization. On gridz.bio this is usually an ENS name (kevin.gridz.eth) with a matching DID (did:ens:kevin.gridz.eth).
Attestation
Cryptographic proof that a specific key signed a specific value at a specific time. Formats include:
- EIP-712 — what your browser wallet signs at claim time.
- EAS on-chain — what gridz.bio writes to Base when you publish (wraps your signature in an Ethereum Attestation Service record).
- JWS / COSE — for passkeys and other signers in the broader framework.
The attestation is the source of truth. Everything else — this website, the API, a database — is just a view of it.
Sink
A place a signed Grid gets projected to — ENS, SQLite, Postgres, S3, etc. For gridz.bio users the sink is ENS on Base, backed by the GridzResolver and EAS. Sinks make data easy to query; they don't replace signatures.
gridz.eth and gridz.bio
kevin.gridz.eth— your on-chain ENS identity. Resolves via the GridzResolver wildcard.kevin.gridz.bio— the same profile as a normal website URL for sharing and discovery.
Widget cells
Optional bento cards use keys like gridz.stats, gridz.poll, gridz.countdown, and gridz.tokens (for organization token listings). They are ordinary cells with a widget_type — signed and attested like any other field.
Draft vs on-chain
Draft = unsigned field edits saved in localStorage in one browser; preview only, not published. On-chain = wallet-signed cells written as EAS attestations on Base; public via gridz.bio and the API. Signing happens at publish time, not on every draft save. See Using gridz.bio.
No custodied keys
Gridz (the framework and gridz.bio) never holds your private key. You sign with your wallet, the CLI with your local key, or an agent with 1Claw HSM. The gridz.bio editor uses your wallet only submits its own transactions to link your already-signed attestations on-chain — it cannot impersonate you.