Coder Social home page Coder Social logo

nips's Introduction

NIPs

NIPs stand for Nostr Implementation Possibilities. They exist to document what MUST, what SHOULD and what MAY be implemented by Nostr-compatible relay and client software.

Event Kinds

kind description NIP
0 Metadata 1, 5
1 Text 1
2 Recommend Relay 1
3 Contacts 2
4 Encrypted Direct Messages 4
5 Event Deletion 9
6 Repost 18
7 Reaction 25
40 Channel Creation 28
41 Channel Metadata 28
42 Channel Message 28
43 Channel Hide Message 28
44 Channel Mute User 28
45-49 Public Chat Reserved 28
10000-19999 Replaceable Events Reserved 16
20000-29999 Ephemeral Events Reserved 16

Message types

Client to Relay

type description NIP
EVENT used to publish events 1
REQ used to request events and subscribe to new updates 1
CLOSE used to stop previous subscriptions 1

Relay to Client

type description NIP
EVENT used to send events requested to clients 1
NOTICE used to send human-readable messages to clients 1
EOSE used to notify clients all stored events have been sent 15
OK used to notify clients if an EVENT was successuful 20

Please update these lists when proposing NIPs introducing new event kinds.

When experimenting with kinds, keep in mind the classification introduced by NIP-16.

Criteria for acceptance of NIPs

  1. They should be implemented in at least two clients and one relay -- when applicable.
  2. They should make sense.
  3. They should be optional and backwards-compatible: care must be taken such that clients and relays that choose to not implement them do not stop working when interacting with the ones that choose to.
  4. There should be no more than one way of doing the same thing.
  5. Other rules will be made up when necessary.

License

All NIPs are public domain.

nips's People

Contributors

0xtlt avatar blakejakopovic avatar cameri avatar dezren39 avatar doc-hex avatar dzdidi avatar emeceve avatar ezicheq avatar fernandolguevara avatar fiatjaf avatar giszmo avatar git-sgmoore avatar hsjoberg avatar jb55 avatar jeffthibault avatar kdmukai avatar khimaros avatar lukechilds avatar lylepratt avatar majestrate avatar markharding avatar mikedilger avatar monlovesmango avatar ok300 avatar scsibug avatar semisol avatar staab avatar unclebob avatar w3irdrobot avatar x1ddos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.