For builders
Build on the substrate.
Skip the auth and database.
Your users keep their portable identity. Your records become part of a growing network of contribution and endorsement. Built on AT Protocol — open standards, federated infrastructure.
Resources
- DocumentationAT Protocol's official docs — the substrate Certified runs on.
- Lexicon specHow to define a schema. Certified's lexicons (org.hypercerts.*, app.certified.*) extend the base.
- API referenceXRPC over HTTP. Read and write records, query indexes, resolve handles.
- GitHubOpen-source code for Certified, magic-indexer, and Hypercerts ecosystem tooling.
- Telegram communityTalk to other builders, get feedback, share what you're working on.
- Email the teamteam@hypercerts.org — use-case discussion, partnership, technical questions.
A record in 12 lines
A signed activity claim on the network. Your app writes this to a user's PDS via com.atproto.repo.createRecord; Certified's indexer picks it up and aggregates it across the user's profile.
{
"$type": "org.hypercerts.claim.activity",
"title": "Protected 12 hectares of Atlantic Forest",
"shortDescription": "Contribution logged with three co-stewards.",
"createdAt": "2026-04-12T11:32:00Z",
"contributors": [
{ "contributorIdentity": "did:plc:alice...", "contributionDetails": { "role": "steward" } },
{ "contributorIdentity": "did:plc:bob...", "contributionDetails": { "role": "evaluator" } }
],
"workScope": { "$type": "org.hypercerts.claim.activity#workScopeString", "value": "biodiversity" }
}The full lexicon is at atproto.com/specs/lexicon. Curl any user's public records: curl 'https://<their-pds>/xrpc/com.atproto.repo.listRecords?repo=<did>&collection=org.hypercerts.claim.activity'
Principles to build by
01
Identity is per-DID
Users sign in once with their AT-Proto handle. Their PDS stores the records. Your app reads and writes against that PDS — never against your own user table.
02
Records are signed and portable
Every contribution, endorsement, and cert your app produces is a record on the user's repo. It survives the user changing apps, the user disabling your app, and your app shutting down.
03
Lexicons are public
Your app declares its schemas as open lexicons. Other apps can read records under your namespace; you can read theirs. The network grows by composition.
Talk to the team
Have a use case to discuss? Want a peek at the upcoming lexicons? Need integration support? We're a small team — fastest reach is Telegram or team@hypercerts.org.