{
  "$schema": "https://ndcodex.com/schemas/object/v1.json",
  "id": "codex://object/justice-begins-as-a-ripple",
  "archive_id": "justice-begins-as-a-ripple",
  "slug": "justice-begins-as-a-ripple",
  "url": "https://ndcodex.com/objects/justice-begins-as-a-ripple/",
  "type": "signal",
  "object_form": null,
  "title": "Justice Begins As A Ripple",
  "summary": "Justice rarely arrives as a monument. It starts as a disturbance: a drop, a ring, a refusal to let the surface remain undisturbed. What looks small in the moment can still reorganize the whole field.",
  "content_text": "Justice rarely arrives as a monument.\n\nIt starts as a disturbance: a drop, a ring, a refusal to let the surface remain undisturbed. What looks small in the moment can still reorganize the whole field.\n\nA clear word. A kept record. A witness who does not look away. These are not dramatic gestures at first, but they travel. They spread pressure into pattern.\n\nJustice moves like this before it takes form in law or structure. First the signal breaks the silence. Then the signal repeats. Then others learn how to hear it.\n\nSmall enough to begin anywhere.\n\nStrong enough to keep widening.",
  "content_markdown": "![justice ripple](/media/pigeon/signal/justice-begins-as-a-ripple-01.jpg)\n\nJustice rarely arrives as a monument.\n\nIt starts as a disturbance: a drop, a ring, a refusal to let the surface remain undisturbed. What looks small in the moment can still reorganize the whole field.\n\nA clear word. A kept record. A witness who does not look away. These are not dramatic gestures at first, but they travel. They spread pressure into pattern.\n\nJustice moves like this before it takes form in law or structure. First the signal breaks the silence. Then the signal repeats. Then others learn how to hear it.\n\nSmall enough to begin anywhere.\nStrong enough to keep widening.",
  "author": {
    "id": "nathan-davis",
    "name": "Nathan Davis",
    "designation": "Archive Operator",
    "role": "Archive Operator",
    "handle": "@nathandavis",
    "avatar": "/media/people/nathan-davis.jpg",
    "bio": "Designer, builder, and curator of the Codex Archive."
  },
  "contributors": [
    {
      "id": "nathan-davis",
      "name": "Nathan Davis",
      "designation": "Archive Operator",
      "role": "Archive Operator",
      "handle": "@nathandavis",
      "avatar": "/media/people/nathan-davis.jpg",
      "bio": "Designer, builder, and curator of the Codex Archive."
    }
  ],
  "date_published": "2026-03-15T03:08:21.206Z",
  "date_modified": "2026-03-15T03:08:21.206Z",
  "status": "published",
  "visibility": "public",
  "language": "en-US",
  "axes": {
    "scale": null,
    "depth": null,
    "focus": null,
    "function": null
  },
  "themes": [
    "signal",
    "justice",
    "witness"
  ],
  "constellations": [],
  "tags": [
    "signal",
    "justice",
    "witness"
  ],
  "keywords": [
    "Signal",
    "justice",
    "witness"
  ],
  "relations": [],
  "media": [],
  "capture": null
}