forked from
standard.site/standard.site
Standard.site landing page built in Next.js
1---
2title: Quick Start
3description: Getting started with Standard.site lexicons.
4date: 2026-02-10
5atUri: "at://did:plc:re3ebnp5v7ffagz6rb6xfei4/site.standard.document/3mek5jhkri72r"
6ogImage: opengraph-image-docs-quick-start-v2.png
7---
8
9import { StandardSite } from '@/app/components/docs'
10
11# Quick Start
12
13Get started with <StandardSite /> lexicons.
14
15## What You Need
16
17- An AT Protocol [Identity](https://atproto.com/guides/identity)
18- A website or blog (any domain works)
19
20## Basic Implementation
21
22### 1. Reference the Lexicons
23
24<StandardSite /> lexicons are published under the `site.standard` namespace. The main lexicons are:
25
26- [`site.standard.publication`](/docs/lexicons/publication) - Publication metadata
27- [`site.standard.document`](/docs/lexicons/document) - Document content and metadata
28- [`site.standard.graph.subscription`](/docs/lexicons/subscription) - User-publication relationships
29- [`site.standard.graph.recommend`](/docs/lexicons/recommend) - Document recommends
30
31Two permission sets are available for OAuth scopes:
32
33- [`site.standard.authFull`](/docs/permissions) - Full access to publications, documents, subscriptions, and recommends
34- [`site.standard.authSocial`](/docs/permissions) - Narrower access for subscriptions and recommends only
35
36### 2. Create a Publication Record
37
38A publication requires a `url` and `name`:
39
40```json
41{
42 "$type": "site.standard.publication",
43 "url": "https://myblog.com",
44 "name": "My Blog",
45 "description": "A personal blog about technology",
46 "preferences": {
47 "showInDiscover": true
48 }
49}
50```
51
52### 3. Verify the Publication
53
54Add a `.well-known` endpoint to the domain:
55
56```
57https://myblog.com/.well-known/site.standard.publication
58```
59
60This should return the publication's AT-URI:
61
62```
63at://did:plc:yourDID/site.standard.publication/rkey
64```
65
66### 4. Create a Document Record
67
68Documents require `site`, `title`, and `publishedAt`:
69
70```json
71{
72 "$type": "site.standard.document",
73 "site": "at://did:plc:abc123/site.standard.publication/3lwafzkjqm25s",
74 "title": "My First Post",
75 "path": "/posts/my-first-post",
76 "description": "An introduction to my blog",
77 "publishedAt": "2024-01-20T14:30:00.000Z",
78 "tags": ["introduction", "blog"],
79 "textContent": "Full text content here..."
80}
81```
82
83### 5. Verify the Document
84
85Add a `<link>` tag to the document's HTML:
86
87```html
88<link
89 rel="site.standard.document"
90 href="at://did:plc:yourDID/site.standard.document/rkey"
91/>
92```
93
94## Extensibility
95
96While the minimum required properties are straightforward, additional properties can be added as needed. The lexicons are designed to be starting points, not constraints.
97
98## Next Steps
99
100- Learn about [Verification](/docs/verification) in detail
101- Explore the [Publication](/docs/lexicons/publication) schema
102- Review [Document](/docs/lexicons/document) properties and options
103- Check out [Implementations](/docs/implementations) for tools and examples