Skip to content

Proposal: Three new kind-0 metadata fields — status, partner, kin #2202

@dankswoops

Description

@dankswoops

I'd like to propose three new optional fields for kind-0 user metadata: status, partner, and kin.

status (integer, 0-7) — A standardized relationship status. 0 is unspecified, 1-7 map to Single, In a relationship, Engaged, Married, Divorced, Widowed, and Open relationship. Integers enable localization across languages.

partner (string array) — An array of hex public keys identifying partners. The first entry is the primary partner. Clients render as many as their UI supports.

kin (array of [pubkey, type] tuples) — Family connections with an optional relationship type integer (0-12) covering parent, child, sibling, grandparent, cousin, in-law, etc. Uniform tuple format for consistent parsing across all languages.

All fields are optional, public (same as all kind-0 data), and use hex pubkeys to align with the protocol's native key format. Clients that don't recognize these fields ignore them per existing conventions.

The full proposal with JSON examples, design rationale, a comparison to NIP-81 (PR #761), and relay size analysis is here:

https://github.com/dankswoops/proposals/tree/main/nostr-kind0-metadata

Looking for feedback on the field definitions, integer ranges, and whether this overlaps with anything in progress. Happy to adjust based on community input before drafting a formal NIP.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions