Nostr NIPs — the Sashité suite
The event kinds through which turn-based abstract strategy board games of the chess family are played over Nostr: challenges and matchmaking, game sessions and moves, adjudication, ratings, moods, and composed puzzles. Every document below is standalone and deployment-neutral — Sashité appears only as the reference deployment. The canonical source is the public sashite/nostr repository — the place to read, cite, and discuss these documents; these pages are generated from it. All NIPs are public domain.
Suite kinds
| Kind | NIP | Summary |
|---|---|---|
3418 |
Open Challenge | This NIP defines a Nostr event kind for publicly entering a matchmaking pool for a turn-based, two-player abstract… |
3419 |
Pairing | This NIP defines a Nostr event kind by which a designated matchmaker pairs two compatible Open Challenges (kind 3418)… |
3420 |
Direct Challenge | This NIP defines a Nostr event kind for publicly proposing a session in a turn-based, two-player abstract strategy… |
3421 |
Accepted Challenge | This NIP defines a Nostr event kind for accepting a Direct Challenge in a turn-based, two-player abstract strategy… |
3422 |
Game Session | Defines kind: 3422, a regular event published, once the session’s founding is complete, by the session’s designated… |
3423 |
Ply | This NIP defines a Nostr event kind for representing a single half-move (ply) in a turn-based, two-player abstract… |
3424 |
Adjudication Request | This NIP defines a Nostr event kind for invoking the designated arbiter of a chess-family session to issue a ruling… |
3425 |
Adjudication | This NIP defines a Nostr event kind for the designated arbiter of a chess-family session to publish a binding ruling —… |
3430 |
Rematch Offer | This NIP defines a Nostr event kind by which a player of a concluded session offers to play its opponent again — a… |
3440 |
Composition | This NIP defines a Nostr event kind by which anyone publishes a complete composed puzzle as a single, self-signed… |
3441 |
Validation | This NIP defines a Nostr event kind by which a validator — any pubkey a consumer chooses to trust — publishes its… |
30420 |
Challenge Policy | This NIP defines a Nostr event kind by which a user declares their policy regarding incoming Direct Challenges (kind… |
30422 |
Mood | This NIP defines an event kind for a reader to label a half-move and the position it produces with one mood — a short… |
Generic NIPs
Timing and rating primitives the suite consumes but that are useful beyond it — candidates for upstream submission.
| Kind | NIP | Summary |
|---|---|---|
3426 |
Elo Rating Attestation | This NIP defines an event kind for a rating authority to publish a signed attestation of an Elo rating update for a… |
3427 |
Glicko-2 Rating Attestation | This NIP defines an event kind for a rating authority to publish a signed attestation of a Glicko-2 rating update for a… |
| — | Canonical Timing | This NIP defines canonical timing: a deterministic rule by which consumers assign an authoritative timestamp to events… |
3410 |
Event Timestamp Attestations | This NIP defines a Nostr event kind for publishing a signed Event Timestamp Attestation (hereafter ‘attestation’) that… |
| — | Self-Timed Timing Relay | This NIP defines a relay profile: the strict created_at ingestion policy by which a relay becomes a usable timing… |
Registry and supporting documents
The canonical repository also carries the machine-readable registry of kinds, markers, and shared constants. The application layer — how the reference deployment binds these NIPs to its rule systems, its trust and privacy analyses, its integration conventions — lives as internal supporting documents: applicative texts that build on the NIPs, never the reverse. The NIPs are standalone; nothing in them depends on that layer.
