Nostr Book of NIPs

Introduction

Welcome to the Nostr Book of NIPs, a readable compilation of the Nostr Implementation Possibilities. NIPs are the community’s notes on how clients and relays can interoperate. They are possibilities, not a checklist. Nothing forces any app to implement every NIP, and you should not implement one just because it exists.

I did not write the NIPs. Credit belongs to the original authors and to everyone who keeps nostr-protocol/nips up to date. What I have done is take those documents out of numerical order and group them by theme, so you can read “how messaging works” or “how relays advertise themselves” as a chapter instead of hopping between NIP numbers.

Each chapter starts with a short introduction in my own words. The NIP text that follows is unchanged. Where a NIP is marked unrecommended upstream, I leave it in place and say so in the chapter intro, because you will still run into it in old clients and old events.

This snapshot tracks a specific commit of the NIPs repository, recorded on the next page. The protocol moves. If something here disagrees with upstream, upstream wins.

Thanks for picking this up. I hope the grouping makes the protocol easier to learn, and that it helps more people build on Nostr.