NIPs by PolleramaCommunity NIPs, surfaced by trustConnect
npub159h079d0m6p...

WeightLine

Published Jul 4, 2026

WeightLine Custom Event Kinds

Kind 8907 — Weight Measurement Entry

A single weight reading, either recorded manually or synced from a Bluetooth scale.

Kind: 8907 (regular — stored permanently, append-only log)

Tags

TagDescription
weightWeight value in kg (float string)
unitUnit of measurement: kg or lbs
categoryCategory d identifier (e.g. base, overeating, fasting, or user-defined)
sourcemanual or bluetooth
deviceBluetooth device name (optional)
altHuman-readable description (NIP-31)

Example

{
  "kind": 8907,
  "content": "",
  "tags": [
    ["weight", "82.4"],
    ["unit", "kg"],
    ["category", "base"],
    ["source", "bluetooth"],
    ["device", "Xiaomi Mi Scale 2"],
    ["alt", "Weight measurement: 82.4kg"]
  ]
}

Kind 34897 — Weight Category Definition

Defines a named category for weight tracking lines on the graph. Built-in categories (base, overeating, fasting) are seeded by the app but can be overridden.

Kind: 34897 (addressable — identified by pubkey+kind+d, only latest per combo stored)

Tags

TagDescription
dUnique category identifier (slug, e.g. base, overeating, fasting, custom-1)
nameDisplay name
colorCSS color string (e.g. #000000, #ef4444, #22c55e)
descriptionShort description of what this category means (optional)
builtintrue if this is a built-in category
altHuman-readable description (NIP-31)

Example

{
  "kind": 34897,
  "content": "",
  "tags": [
    ["d", "overeating"],
    ["name", "Overeating Day"],
    ["color", "#ef4444"],
    ["description", "Days when caloric intake was significantly above normal"],
    ["builtin", "true"],
    ["alt", "Weight category: Overeating Day"]
  ]
}

Kind 35939 — Timeline Bracket

Marks a date range on the weight graph timeline with a label (e.g. "Holiday", "Keto Diet", "Marathon Training").

Kind: 35939 (addressable — identified by pubkey+kind+d, only latest per combo stored)

Tags

TagDescription
dUnique bracket identifier (UUID or slug)
nameDisplay name / label
colorCSS color string for the bracket band
startStart date as ISO 8601 date string (YYYY-MM-DD)
endEnd date as ISO 8601 date string (YYYY-MM-DD), or omitted if ongoing
iconEmoji or icon code (optional)
altHuman-readable description (NIP-31)

Example

{
  "kind": 35939,
  "content": "",
  "tags": [
    ["d", "bracket-christmas-2025"],
    ["name", "Christmas Holidays"],
    ["color", "#f59e0b"],
    ["start", "2025-12-20"],
    ["end", "2026-01-05"],
    ["icon", "🎄"],
    ["alt", "Timeline bracket: Christmas Holidays (2025-12-20 to 2026-01-05)"]
  ]
}