Standard.site - One schema. Every platform.
One schema.<br>Every platform.<br>Standard.site provides shared lexicons for long-form publishing on AT Protocol. Making content easier to discover, index, and move across the ATmosphere.<br>To start, view the definitions<br>Skip to docs
Already implemented by multiple platforms:<br>More soon...
Introduction<br>Standard.site began as a conversation between developers building long-form platforms on AT Protocol. Each had working implementations. Each had defined similar schemas. Coordination was the missing piece.<br>Four principles guide the project:
01.Unified discovery<br>One schema for indexers and tooling. No more supporting multiple lexicons.
02.Content portability<br>Users move between hosts without losing their content, audience, or metadata.
03.Community ownership<br>Maintained by the developers building on it. No single platform controls the standard.
04.Minimal governance<br>Coordination through adoption, not committee. The schema evolves as the ecosystem does.
The lexicons focus on metadata: what a publication is, what a document contains, and where it lives. Content format is left to each platform. The standard grows when builders identify shared needs and align on solutions.
Definitions<br>We currently define a small set of lexicons that cover the core building blocks of long-form platforms: where content lives, what it contains, and how users connect with publications and documents they care about.<br>site.standard.publicationsite.standard.documentsite.standard.graph.subscriptionsite.standard.graph.recommend
urlstring:urirequired<br>Base publication url (ex: https://standard.site). The canonical document URL is formed by combining this value with the document path.
iconblob<br>maxSize: 1MBaccept: [image/*]<br>Square image to identify the publication. Should be at least 256x256.
namestringrequired<br>maxLength: 5000maxGraphemes: 500<br>Name of the publication.
descriptionstring<br>maxLength: 30000maxGraphemes: 3000<br>Brief description of the publication.
basicThemesite.standard.theme.basic<br>Simplified publication theme for tools and apps to utilize when displaying content.<br>site.standard.theme.basic
labelsunion<br>com.atproto.label.defs#selfLabels<br>Self-label values for this publication. Effectively content warnings.
preferences#preferences<br>Object containing platform specific preferences (with a few shared properties).<br>preferences
Modularity. Each lexicon is independent. Use them together for full support, or implement only what your platform requires.
Verification<br>Standard.site records point to domain names and webpages. We need a way for those to point back to the record. This is done through a .well-known route for publications and HTML link tags for documents.<br>Publication
Add a /.well-known/site.standard.publication endpoint to your domain. The response should be the AT-URI of your publication record.<br>This confirms the link between the publication and the domain.<br>Requesthttps://standard.site/.well-known/site.standard.publication<br>Responseat://did:plc:abc123/site.standard.publication/rkey
Document
Add a tag in the document's that references its AT-URI.<br>HTML
Questions<br>Common questions about Standard.site, its governance, and implementation. If something is missing ask us on Bluesky.<br>How do I implement this?
Can I extend the lexicons?
Why is content format not specified?
Why not just use lexicon.community?
Who maintains Standard.site?
Who owns the domain?
How can I get involved?