Community

NIP Wissenslexikon

Application Data and Specialized NIPs: When Nostr Stops Being Just a Social Feed

A deep guide to application-specific data, recommended handlers, forums, chess, static websites, geocaching, BLE, code and niche event formats.

Application Data and Specialized NIPs: When Nostr Stops Being Just a Social Feed visual
NIP topic map7 NIP pagesRead the behavior, then verify the source.
Back to Nostr
NIPs Open NIP map Deep guidesConcepts, NIP pages and source checks BrowseClose
NIP Wissenslexikon7 NIP pagesSource trail checked

Application Data and Specialized NIPs: When Nostr Stops Being Just a Social Feed

A deep guide to application-specific data, recommended handlers, forums, chess, static websites, geocaching, BLE, code and niche event formats.

Why this part of the NIP map matters

The easiest way to underestimate Nostr is to reduce it to microblogging. The specialized NIPs show a different path: chess games, forums, static websites, geocaching, application-specific data, app handlers and other niche formats can all use the same signed-event model when they need portable public state.

Not every specialized standard will become widely used. That is fine. The value is that the ecosystem can experiment with shared event shapes instead of every app building a sealed database and calling it a network. A good specialized NIP says: here is the object, here is how another client can recognize it, here is where app-specific behavior begins.

The point is to see why the niche standards matter. Application data, forums, chess, handlers, static sites and specialized event types prove that Nostr can be a general public-event fabric, not just a timeline.

The test is simple. If another client can inspect the event and understand the object without becoming the original app, the standard is doing useful work. If the event is meaningless outside one product, the app may still be useful, but the network did not gain much.

The mental model

Application-specific data is the pressure valve. It lets apps store state without pretending every custom object should be a global social primitive.

Recommended handlers help clients open unfamiliar event types in the right tool, which is a practical step toward a multi-app ecosystem.

Forum and game standards show that Nostr can carry structured activity, not only speech.

Static websites and nsites point toward publishing and hosting experiments where signed content becomes a portable web object.

Specialized standards need honest labels: experimental, narrow, useful, abandoned or genuinely shared. Do not flatten them into hype.

Read this topic with one hand on the protocol and one hand on the product. The protocol tells you the shared format. The product tells you what a person actually sees, approves, loses, recovers or can take elsewhere. Both are necessary. One without the other creates either abstract standards talk or a pretty interface with no durable proof underneath.

Use the source links as proof, not as decoration. A useful NIP explanation gives you the mental model first, then sends you to the official markdown when exact fields, status notes, examples or implementation details matter.

Nostr becomes more interesting when it stops looking like social media

The first wave of Nostr attention often starts with notes, follows and clients. The application-data NIPs are where the protocol starts acting less like a social network and more like a shared event fabric. A forum post, chess move, handler recommendation, static-site pointer, geolocation marker or device-related event may look niche, but each one tests the same deeper idea: can independent software agree on a public object without one platform owning the database?

That matters because social apps are only one surface. A local venue might want events, menus, groups, payment links and media. A developer tool might want signed release notes and repository references. A marketplace might want listings and reputation. A game might want public moves and commentary. A media app might want playlists and live activities. If everything has to become a note, the protocol stays shallow. Specialized event kinds let products be more precise.

Precision has a cost. Every specialized event kind asks clients to understand a new shape. If too many formats appear without real implementations, the network becomes harder to read. If too few formats exist, apps overload generic events and lose meaning. The balance is cultural as much as technical: standardize when shared behavior is real, not when a product wants a private namespace to sound official.

Handlers are a good example. A Nostr event can point to content, but a person still needs a product that knows how to open it. Handler recommendations and app metadata help bridge protocol and product. They let the network say: this kind of event can be opened by these tools. That is not glamorous, but it is how an open ecosystem avoids becoming a pile of links nobody knows how to use.

Niche standards are where portability gets tested

A niche NIP earns its place when it makes something portable that otherwise would stay trapped inside one app. A forum thread should not depend on one forum host forever. A chess game should be readable outside one chess client. A static site pointer should survive outside one publishing interface. A handler recommendation should help you choose the right app without giving one app permanent control over discovery.

This is also where quality control matters. A standard that names an event kind but does not explain fields, tags, replacement behavior, deletion, relay expectations or implementation examples leaves too much to guess. Guessing is how incompatible clients are born. For application data, the boring details are the product. They decide whether another developer can build a second client without interviewing the first one.

You should also watch maturity. Some specialized NIPs are active because products use them. Others are experiments, historical notes or bridges to ideas that never gained enough adoption. That does not make them useless. It means you should read them as a map of the ecosystem's imagination and then check whether the idea left the page.

The strongest specialized standards create composability. A forum event can be referenced by profiles, zapped, moderated, searched and embedded. A media object can be collected, annotated, highlighted and paid for. A marketplace listing can connect to wallet flows, reputation and relay policy. The value appears when event types do not live alone.

Product language should stay close to the event

When application-data pages become vague, they lose the plot. The useful question is always concrete: what event kind exists, which tags matter, which object is addressable, which client can display it, which relay behavior matters and what a second implementation would need to reproduce. That is how you separate a real interoperable surface from a product feature wearing protocol clothes.

App data also needs privacy language. Some specialized events are public by nature. Others may carry sensitive context through tags, metadata, geolocation, device state or membership clues. If a product says it uses Nostr for a novel app, you should ask what becomes public before the novelty distracts you.

The future of Nostr may depend on these quieter standards more than the loud social ones. If the protocol can carry publishing, commerce, games, communities, local spaces, reviews, device signals and developer objects without a central database owner, it becomes a real substrate. If it remains only a microblogging alternative, the promise is smaller.

When not to turn an app feature into a NIP

Not every clever app feature deserves a NIP. A standard is useful when independent software needs to understand the same object. If the behavior only makes sense inside one product, a private implementation may be healthier until the pattern proves itself. Premature standardization creates documents that look official but carry little real interoperability.

The right trigger is repeated need. If several clients want to show the same kind of forum thread, open the same kind of game, resolve the same kind of handler, index the same kind of local object or verify the same kind of app data, then a shared event shape starts to matter. A NIP should lower coordination cost, not raise the status of one product roadmap.

The edge cases reveal whether the idea is ready. Can the object be deleted, replaced, quoted, paid for, moderated, searched, migrated and rendered by a second client? Does it need relay hints, expiration, addressability, encryption or media metadata? If those questions are unanswered, the feature may still be good, but the standard is not mature enough to teach as settled infrastructure.

This matters for the Nostr wiki because specialized NIPs can be either the most exciting proof of extensibility or the messiest part of the map. The difference is explanation. You need to know whether a document describes a living cross-client object, a narrow app convention, an experiment or historical context.

Specialized events connect back to the human layer

Application data sounds technical, but the reason it matters is human. A forum lets a community remember arguments. A game lets people play in public. A website pointer lets a creator publish outside a platform CMS. A handler lets someone choose the app that opens a link. A local object can connect digital identity to a venue, event or place.

The protocol detail becomes meaningful when it preserves choice. If a forum can move between clients, the community is less trapped. If a game record can be inspected outside the original app, the match becomes part of public culture. If handlers are transparent, discovery does not belong to one app store. If app data can be signed and referenced, niche tools can become part of the same social graph.

That is why these NIPs need plain writing. They are not random extras after the important social standards. They are the test of whether Nostr can carry many kinds of public life without centralizing the database again.

A product should prove why its custom object belongs on Nostr

A custom object belongs on Nostr when another product can do something useful with it. A forum thread can be opened by another forum client. A game move can be verified by another game interface. A static site pointer can be rendered by another publishing tool. A handler recommendation can help you choose an app. A local event can connect to people, payments and media outside one venue system.

If no other product can interpret the object, the app may still be good, but the Nostr claim is weaker. The event is public, but not yet interoperable. That distinction should be visible on the page. Open protocols are not magic; they need shared meaning.

The next proof is composition. Can the object be zapped, bookmarked, reported, labeled, embedded, searched or referenced by another event? Can it use existing identity, relay, media and payment patterns instead of inventing everything again? The richest Nostr objects feel native because they connect to the rest of the graph.

The final proof is exit. If the first app disappears, can another app reconstruct enough of the object to make it useful? This is where event kind, tags, addressability, media metadata and source links matter. A specialized NIP that survives exit is infrastructure. One that cannot survive exit is mostly an app export format.

The app-data layer is also an app-store question

Recommended handlers and app metadata may look small, but they answer a large question: who decides which app opens which object? In closed ecosystems, that decision is often owned by an app store, operating system, search engine or platform default. Nostr can make the recommendation itself part of the open graph.

That does not automatically solve discovery. A malicious handler can exist. A low-quality app can advertise support. A client can prefer its own product. But the recommendation becomes inspectable. You can see the event, the author, the kind of object it handles and whether other people or communities endorse it.

This is one reason app-data NIPs matter for Crays-style hubs. A user should not need to know every product name first. The hub can start from a task, object or media type, then point to the apps that understand it. Specialized events and handlers are the bridge between protocol knowledge and usable navigation.

The same logic applies beyond software. Local venues, event programs, commerce objects, media libraries and community tools all need a way to say: this is the object, these are the references, this is how another surface can open it. Without that bridge, Nostr remains a protocol that developers admire and normal people struggle to use.

A specialized NIP should make the next app possible

The best test for specialized application data is whether it helps someone build the next app. If a second team can read the document, parse the event, understand the tags, render the object and connect it to existing Nostr identity, relay, media and payment flows, the NIP has done real coordination work.

If the second app cannot do that, the page should be honest. Maybe the idea is early. Maybe the event shape is too narrow. Maybe the first product is still proving demand. That does not make the work bad. It means the article should present it as emerging product vocabulary, not settled infrastructure.

This distinction matters because Nostr will grow through many small surfaces. Some will become serious: publishing, wallets, commerce, local communities, events, creator tools. Some will stay playful or narrow. A good Wissenslexikon gives both room without pretending they carry the same weight.

That balance is what keeps the app-data layer from becoming noise. The page should welcome experimentation while still asking whether the object can travel.

When it can travel, the niche stops being niche. It becomes another piece of shared infrastructure.

For builders, that means writing examples with care. Show the event kind. Show the tags. Show the expected client behavior. Show what happens when the object is missing, replaced, deleted or opened by a client that does not support it. A specialized NIP becomes useful when someone else can implement it without guessing your private intention.

For users, it means asking whether the feature survives the first product. If the answer is yes, the app-data layer is doing real work. If the answer is no, the feature may still be nice, but it should not be sold as portability.

This is also how the archive should treat emerging apps fairly. It can document the idea, link the source and explain the promise, while still marking the difference between one clever implementation and a shared ecosystem pattern.

The practical instinct is simple: a specialized app-data NIP earns trust when it helps another app understand the same object without private coordination.

That is the standard a living app directory should use as well: not just whether the feature exists, but whether it becomes portable enough to matter outside the first interface.

The NIP pages in this topic

NIP-5A

Static Websites (nsites

This NIP describes a method by which static websites can be hosted from Blossom assets.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch pubkeyB36, created_at, ["app", "<kind>:<pubkey>:<d-tag>", "<relay>"], <npub>.nsite-host.com, v<snapshotIdB36>.nsite-host.com, <pubkeyB36><dTag>.nsite-host.com because these are the terms that usually surface as product behavior. Nearby standards: NIP-01, NIP-34, NIP-89.

NIP-64

Chess (PGN

This NIP defines kind:64 notes representing chess games in [PGN][pgnspecification] format, which can be read by humans and is also supported by most chess software.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch kind 64, kind:64, .content because these are the terms that usually surface as product behavior.

NIP-78

Application-specific data

The goal of this NIP is to enable remoteStorage-like capabilities for custom applications that do not care about interoperability.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch content, tags because these are the terms that usually surface as product behavior.

NIP-7D

Forum Threads

Replies to kind 11 MUST use NIP-22 kind 1111 comments. Replies should always be to the root kind 11 to avoid arbitrarily nested reply hierarchies.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch kind 11, kind 1111, kind 11, kind 1111 because these are the terms that usually surface as product behavior. Nearby standards: NIP-22.

NIP-89

Recommended Application Handlers

This NIP describes kind:31989 and kind:31990: a way to discover applications that can handle unknown event-kinds.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch kind 31989, kind 31990, kind 0, kind 1, kind 31337, kind:31989 because these are the terms that usually surface as product behavior. Nearby standards: NIP-01, NIP-19, NIP-31.

NIP-BE

Nostr BLE Communications Protocol

This NIP specifies how Nostr apps can use BLE to communicate and synchronize with each other. The BLE protocol follows a client-server pattern, so this NIP emulates the WS structure in a similar way, but with some adaptations to its limitations. The official README carries a caution here, so use it as history or compatibility context before you build something new.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch EVENT, EOSE because these are the terms that usually surface as product behavior. Nearby standards: NIP-01, NIP-77.

NIP-CC

Geocaching

This NIP defines event kinds for geocaching on Nostr. These events allow users to create, share, and log geocaches in a decentralized manner.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. Watch kind 37516, kind 7516, kind 1111, kind 7517, kind 37517, name because these are the terms that usually surface as product behavior. Nearby standards: NIP-22, NIP-19.

Deep reading: where the details become product behavior

NIP-5A: Static Websites (nsites

This NIP describes a method by which static websites can be hosted from Blossom assets.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around pubkeyB36, created_at, ["app", "<kind>:<pubkey>:<d-tag>", "<relay>"], <npub>.nsite-host.com, v<snapshotIdB36>.nsite-host.com, <pubkeyB36><dTag>.nsite-host.com, snapshotIdB36, dTag. It also touches NIP-01, NIP-34, NIP-89, so do not read it as an island.

The source structure points you toward Site Manifests, Named Sites, Manifest Snapshots, Aggregate Hash. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-64: Chess (PGN

This NIP defines kind:64 notes representing chess games in [PGN][pgnspecification] format, which can be read by humans and is also supported by most chess software.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around kind 64, kind:64, .content.

The source structure points you toward Note, Content, Notes, Client Behavior. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-78: Application-specific data

The goal of this NIP is to enable remoteStorage-like capabilities for custom applications that do not care about interoperability.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around content, tags.

The source structure points you toward Nostr event, Some use cases. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-7D: Forum Threads

Replies to kind 11 MUST use NIP-22 kind 1111 comments. Replies should always be to the root kind 11 to avoid arbitrarily nested reply hierarchies.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around kind 11, kind 1111, kind 11, kind 1111. It also touches NIP-22, so do not read it as an island.

The source structure points you toward the event fields, examples and edge cases. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-89: Recommended Application Handlers

This NIP describes kind:31989 and kind:31990: a way to discover applications that can handle unknown event-kinds.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around kind 31989, kind 31990, kind 0, kind 1, kind 31337, kind:31989, kind:31990, content. It also touches NIP-01, NIP-19, NIP-31, so do not read it as an island.

The source structure points you toward Rationale, Parties involved, Events, Recommendation event. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-BE: Nostr BLE Communications Protocol

This NIP specifies how Nostr apps can use BLE to communicate and synchronize with each other. The BLE protocol follows a client-server pattern, so this NIP emulates the WS structure in a similar way, but with some adaptations to its limitations.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around EVENT, EOSE. It also touches NIP-01, NIP-77, so do not read it as an island.

The source structure points you toward Device advertisement, GATT service, Role assignment, Messages. That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

NIP-CC: Geocaching

This NIP defines event kinds for geocaching on Nostr. These events allow users to create, share, and log geocaches in a decentralized manner.

Ask whether this object is meaningful outside the original app or only looks like a standard because the app published an event. In the official file, slow down around kind 37516, kind 7516, kind 1111, kind 7517, kind 37517, name, ["F", "<winner-pubkey-hex>"], 37516:<pubkey>:<d-tag>. It also touches NIP-22, NIP-19, so do not read it as an island.

The source structure points you toward Geocache Listing Event (Kind 37516), Content, Tags, Found Log Event (Kind 7516). That is where the useful detail lives: not in the fact that the NIP exists, but in the exact behavior it asks independent software to share. When you test a product claim, open the official file, try another client or relay, and ask whether the visible feature still means the same thing outside the app that introduced it.

What to check before you trust a product claim

Start with the most concrete promise. Does the feature claim portable identity, encrypted messaging, relay discovery, zaps, wallet permissions, long-form publishing, moderation, search or application data? Name the promise before you open the source. Otherwise every NIP starts to look like background reading.

Open the official markdown next. Look for required fields, event kinds, tags, relay messages, status warnings and examples. Do not stop at the title. Many Nostr mistakes happen because a product advertises a NIP number while ignoring the boring edge case that actually protects the user.

Then test another implementation. If the event, payment, list, message, article, badge or relay behavior only works inside one product, the feature may still be useful, but it is not yet a strong portability claim. The second implementation is where the standard stops being a slogan.

Finally, check the risk class. Keys, private messages, money, storage, moderation and identity need more caution than a playful app format. A product can be young and promising, but the page should not ask you to trust it like a mature standard when the source trail is thin.

How this area usually fails

The first failure is overclaiming. A client says it supports a NIP, but it supports only the easiest happy path. That may be enough for a demo and not enough for real use.

The second failure is hidden custody. The app feels convenient because it quietly holds the key, routes the wallet, chooses relays or stores media in a way that makes leaving hard. Nostr is most interesting when those boundaries are visible.

The third failure is stale source material. A guide, blog post or old archive page may describe a version of the ecosystem that changed. The official repository and active implementations matter because Nostr standards are living documents.

The fourth failure is social flattening. Reports, badges, zaps, follows, labels and community events are not neutral numbers. They are signed social signals. You need to know who produced them, who displays them and what the product does with them.

The fifth failure is pretending the protocol solves product judgment. A NIP can define a format. It cannot force a client to explain it well, moderate fairly, store files forever or make a wallet prompt humane. Good pages keep that distinction clear.

Where to go next

The common thread is that a NIP is not a magic wand. It gives independent software a shared object, permission, message, tag, filter or social signal. The product still has to explain what it does with that shared shape.

If you are new to the topic, read the cards first and open only the NIP that matches your immediate question. If you are building, read the official markdown and test against more than one implementation. If you are evaluating a product, ask which parts travel with your key and which parts stay inside the product.

That is the difference between a useful NIP atlas and a numbered archive. The archive tells you that a document exists. The Wissenslexikon tells you why the document changes the way Nostr feels in your hands.

When a NIP touches keys, money, private messages, moderation or storage, slow down. Those are not decorative protocol topics. They decide who can sign, who can pay, who can read, who can hide, who can recover and who can leave.

The best Nostr product writing stays close to those consequences. It does not bury you in acronym soup, and it does not pretend every standard is equally mature. It tells you what you can do next, what you should verify, and where trust enters the room.

Direct sources

Use these sources to verify the text, not as decoration. The official repository is the canonical source; mirrors, guides and project pages help you see how the standard is explained or implemented elsewhere.

nostr-protocol/nipsOfficial NIPs repository and README status table. NIPs commit historyRecent changes, authorship trail and implementation corrections. nips.nostr.comReadable NIP mirror for quick source checks. Nostr.howSecondary education source for protocol orientation. The Nostr BookLong-form learning reference for Nostr concepts and event kinds. Official NIP-5A: Static Websites (nsitesCanonical GitHub markdown and commit history. Official NIP-64: Chess (PGNCanonical GitHub markdown and commit history. Official NIP-78: Application-specific dataCanonical GitHub markdown and commit history. Official NIP-7D: Forum ThreadsCanonical GitHub markdown and commit history. Official NIP-89: Recommended Application HandlersCanonical GitHub markdown and commit history. Official NIP-BE: Nostr BLE Communications ProtocolCanonical GitHub markdown and commit history. Official NIP-CC: GeocachingCanonical GitHub markdown and commit history. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article. NIP-5A: Static Websites (nsites)Source used for this NIP Wissenslexikon article.
Back to the NIP hub