page.mooring.site
A Mooring site. Every field except createdAt is optional: an empty record is a valid site, and the renderer falls back to the owner's profile records and a default section order.
Details · record, key any
| Kind | record |
|---|---|
| Record key | any |
| Authority | mooring.page |
| Indexed |
Record
record · key anyProperties
contactEmail
stringPublic contact email, rendered as a contact affordance on the site. Publishing an address here makes it world-readable.
maxLength: 2540maxGraphemes: 254
Client-declared timestamp when this record was created.
description
stringShort description of the site, used for meta tags and previews.
maxLength: 30000maxGraphemes: 3000
discoverable
booleanDefault true when absent. When false, the renderer emits noindex directives for the site. Does not affect the public visibility of the underlying atproto records.
icon
blobSquare image used as the site icon/favicon. Should be at least 256x256.
maxSize: 1000000accept: image/*
labels
unionlinks
arrayLinks rendered as the site's closing actions, in order: where a visitor can follow or reach the owner, on whichever apps the owner chooses. When absent, renderers should fall back to a link to the owner's profile that works from any client.
maxLength: 5
name
stringSite title. When absent, renderers should fall back to the owner's profile displayName or handle.
maxLength: 5000maxGraphemes: 500
sections
arrayOrdered sections of the site, rendered top to bottom; order is array position. When absent, renderers should use a sensible default order based on which sources have data.
maxLength: 50
signOff
stringValediction rendered before the owner's name in the site's closing sign-off, like 'Warmly,'. When absent, the sign-off shows the name alone.
maxLength: 640maxGraphemes: 64
#careerSection
objectProfessional profile rendered from the owner's id.sifa.* records.
Properties
parts
arrayWhich parts of the sifa profile to render, in order. When absent, renderers should show the parts that have data, in a default order.
maxLength: 10
knownValues: positions | education | skills | projects | certifications | publications
title
stringmaxLength: 1280maxGraphemes: 128
#colors
objectSemantic color overrides, mirroring the role vocabulary of site.standard.theme.basic. Any subset may be set.
Properties
accentForeground
unionColor used for button text.
background
unionColor used for content background.
foreground
unionColor used for content text.
#heroSection
objectIntroductory section rendered from the owner's profile records (app.bsky.actor.profile, with id.sifa.profile.self as professional-context overlay when present).
Properties
showAvatar
booleanDefault true when absent.
style
stringBanner treatment when the profile carries a banner: 'band' renders it full-width above the heading, 'postcard' renders it as a framed photograph beside the heading. Default 'band'. Without a banner both fall back to the avatar-led hero.
knownValues: band | postcard
tagline
stringShort line under the heading. When absent, renderers should fall back to the profile description or sifa headline.
maxLength: 3000maxGraphemes: 300
title
stringHeading override. When absent, renderers should fall back to profile data.
maxLength: 1280maxGraphemes: 128
#link
object#pagesSection
objectListing of the site's authored page.mooring.page records.
#postsSection
objectRecent microblog posts from the owner's app.bsky.feed.post collection.
#rgb
object#theme
objectTheme selection and overrides. All fields optional; renderer defaults apply.
#writingSection
objectLong-form writing from the owner's site.standard.document collection (with pub.leaflet.* legacy records as fallback).
Properties
limit
integerMaximum number of documents to display. Renderer default applies when absent.
minimum: 1maximum: 50
publication
string · at-uriAT-URI of a site.standard.publication record to scope the listing to. When absent, renderers should list the owner's documents across publications.
title
stringmaxLength: 1280maxGraphemes: 128
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
site.mochott.profile
recordA publication profile record. Acts as a signaling record indicating the account hosts a mochott publication.
-
site.mochott.layout
recordA block-based page layout. Renders the home of a mochott profile or of a minisite.
-
page.mooring.page
recordAn authored page on a Mooring site (e.g. /about, /now, /contact).
-
app.zeens.portfolio
recordConfiguration for a user's public Portfolio site (e.g. alice.zeens.app). One per user, keyed 'self'. A portfolio is a curated list of the user's COLLECTIONS, displayed beautifully: it holds the subdomain, a theme + layout/columns/gap applied to every collection, the ordered list of collection AT-URIs to show, and an optional home collection. Collections own their own title/subtitle/description/photos/slug, which the portfolio reuses; the site header comes from the user's profile. Stored on the u
-
site.mochott.minisite
recordA minisite record. Represents a curated collection of articles with its own branding and URL.