org.latha.gathering

nandi.uk

Documentation

A community gathering or meetup with structured attendee data and extensible thematic sections.

main record

A community gathering or meetup with structured attendee data and extensible thematic sections.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

Client-declared timestamp when this record was created.

description string Optional

Brief description of the gathering.

maxLength: 20000 bytesmaxGraphemes: 2000 graphemes
endsAt string datetime Optional

Client-declared timestamp when the gathering ends.

format string Optional

Gathering format (e.g., unconference, workshop, hackathon, panel).

maxLength: 1000 bytesmaxGraphemes: 100 graphemes
name string Required

Name of the gathering.

maxLength: 2000 bytesmaxGraphemes: 200 graphemes
sections array of union Optional

Modular sections for grouping and analyzing the gathering. Each entry must specify a $type. Built-in: thematicCluster. Other lexicons may add more.

startsAt string datetime Optional

Client-declared timestamp when the gathering starts.

View raw schema
{
  "description": "A community gathering or meetup with structured attendee data and extensible thematic sections.",
  "key": "tid",
  "record": {
    "properties": {
      "attendees": {
        "description": "People who attended the gathering, with roles and metadata.",
        "items": {
          "ref": "org.latha.gathering#attendee",
          "type": "ref"
        },
        "type": "array"
      },
      "createdAt": {
        "description": "Client-declared timestamp when this record was created.",
        "format": "datetime",
        "type": "string"
      },
      "description": {
        "description": "Brief description of the gathering.",
        "maxGraphemes": 2000,
        "maxLength": 20000,
        "type": "string"
      },
      "endsAt": {
        "description": "Client-declared timestamp when the gathering ends.",
        "format": "datetime",
        "type": "string"
      },
      "format": {
        "description": "Gathering format (e.g., unconference, workshop, hackathon, panel).",
        "maxGraphemes": 100,
        "maxLength": 1000,
        "type": "string"
      },
      "host": {
        "description": "The primary host or organizing identity.",
        "ref": "org.latha.gathering#actorRef",
        "type": "ref"
      },
      "locations": {
        "description": "Where the gathering takes place. Reuses community.lexicon.location union (address, geo, fsq, hthree).",
        "items": {
          "refs": [
            "community.lexicon.location.address",
            "community.lexicon.location.geo",
            "community.lexicon.location.fsq",
            "community.lexicon.location.hthree"
          ],
          "type": "union"
        },
        "type": "array"
      },
      "mode": {
        "description": "The attendance mode of the gathering. Reuses community.lexicon.calendar.event#mode.",
        "ref": "community.lexicon.calendar.event#mode",
        "type": "ref"
      },
      "name": {
        "description": "Name of the gathering.",
        "maxGraphemes": 200,
        "maxLength": 2000,
        "type": "string"
      },
      "sections": {
        "description": "Modular sections for grouping and analyzing the gathering. Each entry must specify a $type. Built-in: thematicCluster. Other lexicons may add more.",
        "items": {
          "closed": false,
          "refs": [
            "org.latha.gathering#thematicCluster"
          ],
          "type": "union"
        },
        "type": "array"
      },
      "startsAt": {
        "description": "Client-declared timestamp when the gathering starts.",
        "format": "datetime",
        "type": "string"
      },
      "status": {
        "description": "The status of the gathering. Reuses community.lexicon.calendar.event#status.",
        "ref": "community.lexicon.calendar.event#status",
        "type": "ref"
      },
      "uris": {
        "description": "Platform links (OpenMeet, Meetup.com, etc.). Reuses community.lexicon.calendar.event#uri.",
        "items": {
          "ref": "community.lexicon.calendar.event#uri",
          "type": "ref"
        },
        "type": "array"
      }
    },
    "required": [
      "name",
      "createdAt"
    ],
    "type": "object"
  },
  "type": "record"
}
actorRef object

A lightweight reference to an ATProto identity.

Properties

did string did Required

ATProto DID.

handle string Optional

Current ATProto handle.

View raw schema
{
  "description": "A lightweight reference to an ATProto identity.",
  "properties": {
    "did": {
      "description": "ATProto DID.",
      "format": "did",
      "type": "string"
    },
    "handle": {
      "description": "Current ATProto handle.",
      "type": "string"
    }
  },
  "required": [
    "did"
  ],
  "type": "object"
}
attendee object

A rich attendee record extending community.lexicon.calendar.rsvp with role, bio, projects, and tags. While rsvp is a separate record linking a subject to a status, attendee embeds identity and metadata directly.

Properties

bio string Optional

Short bio or tagline.

maxLength: 5000 bytesmaxGraphemes: 500 graphemes
did string did Required

ATProto DID.

displayName string Optional

Display name.

maxLength: 1000 bytesmaxGraphemes: 100 graphemes
handle string Optional

ATProto handle.

notes string Optional

Researcher notes about this attendee.

maxLength: 10000 bytesmaxGraphemes: 1000 graphemes
tags array of string Optional

Interest tags (a11y, privacy, transit, category-theory, etc.).

View raw schema
{
  "description": "A rich attendee record extending community.lexicon.calendar.rsvp with role, bio, projects, and tags. While rsvp is a separate record linking a subject to a status, attendee embeds identity and metadata directly.",
  "properties": {
    "bio": {
      "description": "Short bio or tagline.",
      "maxGraphemes": 500,
      "maxLength": 5000,
      "type": "string"
    },
    "did": {
      "description": "ATProto DID.",
      "format": "did",
      "type": "string"
    },
    "displayName": {
      "description": "Display name.",
      "maxGraphemes": 100,
      "maxLength": 1000,
      "type": "string"
    },
    "handle": {
      "description": "ATProto handle.",
      "type": "string"
    },
    "notes": {
      "description": "Researcher notes about this attendee.",
      "maxGraphemes": 1000,
      "maxLength": 10000,
      "type": "string"
    },
    "projects": {
      "description": "Projects this person builds or maintains.",
      "items": {
        "ref": "org.latha.gathering#projectRef",
        "type": "ref"
      },
      "type": "array"
    },
    "role": {
      "description": "Role in the gathering: host, organizer, participant, speaker, volunteer.",
      "ref": "org.latha.gathering#role",
      "type": "ref"
    },
    "tags": {
      "description": "Interest tags (a11y, privacy, transit, category-theory, etc.).",
      "items": {
        "maxLength": 640,
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "did"
  ],
  "type": "object"
}
host token

Host of the gathering.

Referenceorg.latha.gathering#host

Tokens have no data representation. Use the reference string as a value.

View raw schema
{
  "description": "Host of the gathering.",
  "type": "token"
}
organizer token

Organizer of the gathering.

Referenceorg.latha.gathering#organizer

Tokens have no data representation. Use the reference string as a value.

View raw schema
{
  "description": "Organizer of the gathering.",
  "type": "token"
}
participant token

Participant in the gathering.

Referenceorg.latha.gathering#participant

Tokens have no data representation. Use the reference string as a value.

View raw schema
{
  "description": "Participant in the gathering.",
  "type": "token"
}
projectRef object

A reference to a project or tool.

Properties

name string Required

Project name.

maxLength: 1000 bytesmaxGraphemes: 100 graphemes
uri string uri Optional

Link to the project.

View raw schema
{
  "description": "A reference to a project or tool.",
  "properties": {
    "name": {
      "description": "Project name.",
      "maxGraphemes": 100,
      "maxLength": 1000,
      "type": "string"
    },
    "uri": {
      "description": "Link to the project.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "type": "object"
}
role string

Role of an attendee in the gathering. No existing lexicon defines attendee roles; community.lexicon.calendar.rsvp only has going/interested/notgoing.

Known Values (other values may be valid)
org.latha.gathering#host(token) org.latha.gathering#organizer(token) org.latha.gathering#participant(token) org.latha.gathering#speaker(token) org.latha.gathering#volunteer(token)
View raw schema
{
  "description": "Role of an attendee in the gathering. No existing lexicon defines attendee roles; community.lexicon.calendar.rsvp only has going/interested/notgoing.",
  "knownValues": [
    "org.latha.gathering#host",
    "org.latha.gathering#organizer",
    "org.latha.gathering#participant",
    "org.latha.gathering#speaker",
    "org.latha.gathering#volunteer"
  ],
  "type": "string"
}
speaker token

Speaker at the gathering.

Referenceorg.latha.gathering#speaker

Tokens have no data representation. Use the reference string as a value.

View raw schema
{
  "description": "Speaker at the gathering.",
  "type": "token"
}
thematicCluster object

A group of attendees united by a shared theme, practice, or infrastructure role. Each cluster names a social or technical layer present at the gathering.

Properties

description string Optional

What brings this group together or what they provide.

maxLength: 10000 bytesmaxGraphemes: 1000 graphemes
name string Required

Cluster name (e.g., Organizer Core, Protocol Infrastructure, Technologist-Philosophers).

maxLength: 1000 bytesmaxGraphemes: 100 graphemes
View raw schema
{
  "description": "A group of attendees united by a shared theme, practice, or infrastructure role. Each cluster names a social or technical layer present at the gathering.",
  "properties": {
    "description": {
      "description": "What brings this group together or what they provide.",
      "maxGraphemes": 1000,
      "maxLength": 10000,
      "type": "string"
    },
    "members": {
      "description": "People in this cluster.",
      "items": {
        "ref": "org.latha.gathering#actorRef",
        "type": "ref"
      },
      "type": "array"
    },
    "name": {
      "description": "Cluster name (e.g., Organizer Core, Protocol Infrastructure, Technologist-Philosophers).",
      "maxGraphemes": 100,
      "maxLength": 1000,
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "type": "object"
}
volunteer token

Volunteer at the gathering.

Referenceorg.latha.gathering#volunteer

Tokens have no data representation. Use the reference string as a value.

View raw schema
{
  "description": "Volunteer at the gathering.",
  "type": "token"
}

Lexicon Garden

@