Badge definitions and awards

As I’ve said:

I do think a “badges group” Lexicon is a nice idea, but I don’t want to expand the scope of this. What I have is a more concrete, current need and a “bug-fix” (see proposal at the end).

The needs are:

  1. Allow people to assign an id so they can find/sort them by that (an internal identifier) and not what’s they want to be written on the badge (a cosmetic element)
  2. Creating a human readable slug that makes development, classification, and portability easier

The problem today

Two practical examples hopefully clarify what I mean:

Issue #1: links

Without id:

  • badge-viewer.org/badges/grand-goose-ambassador
  • badge-viewer.org/badges/serial-honk-nector

(??? what are these???)

With id:

  • badge-viewer.org/badges/atconf2026-connections-rank-A
  • badge-viewer.org/badges/atconf2026-connections-rank-B
  • badge-viewer.org/badges/atconf2027-another-badge-1
  • badge-viewer.org/badges/atconf2027-another-badge-2

(I know at a glance what they refer to, I know what I’m clicking on!)

Issue #2: Badge display widget

Without id

[grand-goose-ambassador] [in-the-way-badge-1] [in-the-way-badge-2] [in-the-way-badge-3] [serial-honk-nector]

(badges end up scattered, which I can tell you with surety badge-lovers will hate with a passion)

With id:

[atconf2026-connections-rank-A] [atconf2026-connections-rank-B] [in-the-way-badge-1] [in-the-way-badge-2] [in-the-way-badge-4] 

(related badges are together, all is right with the world, i will display this on my site)

Changing badges

For this particular point:

I am more likely to want to change the title and description than to want to change an identifier.

…and I realize now I may have invalidated some conference badges because I did change one name. Oops.

Proposal: appearance Lexicon

If I did break our conference badges renaming one, this is going to keep happening to others, and it’d be nice to address it now.

Likely, there needs to be a clearer separation of:

  1. Badge identifiers (certified, unchangeable)
  2. Badge cosmetic elements (potentially changeable)

Right now, name is being conflated as both identifier and display title, which causes the issue above.

Proposal: two separate lexicons community.lexicon.badge.definition (standardized internal definition), community.lexicon.badge.appearance (standardized external display). The first one is what get signed into a PDS.

{
  name: atconf2026-connections-rank-A,
  appearance: {
      uri: at://[conf-did]/community.lexicon.badge.appearance/whatever
      cid: (optional)
  },
  "$type": "community.lexicon.badge.definition",
  "createdAt": "2026-03-30T09:19:25.897Z",
  "description": "[General description that communicates intent, not meant to be creative]"
}
{
  "$type": "community.lexicon.badge.appearance",
  "title": "Grand Goose Ambassador"
  "description": "Made at least 100 connections at ATmosphereConf2026"
}

If you add a CID the badge cannot have its appearance changed, but a badge without a CID can be changed.

The reason I want this is:

  1. merging definition and cosmetic elements in one makes badges brittle, but…
  2. …without cosmetic elements (title/description) being standardized and portable, badges are useless for most cases I care about
3 Likes