Skip to content

nostrability

Tracking interoperability across the nostr ecosystem.

nostrability.github.io/nostrability — NIP support tracker with per-app compatibility tables

What is nostrability

  • Positive interop stuff that works together (e.g. across mutually adopted NIP/kind)
  • Negative interop where apps break when talking to each other (DMs, zaps, relay lists, etc.)
  • Schema & schema validators validating nostr events against NIP/kind definitions using JSON Schema
  • Schemata codegen similar to above but without need for json validators
  • Sherlock Deducing which apps post broken stuff to relays
  • Releases automated daily scanning of nostr repos for new releases

Key Repos

Repo Description
nostrability Interoperability tracker. Includes NIP adoption tables, broken interop reports etc.
nostrability web dashboard the above, rendered
schemata Language-agnostic JSON schemas for nostr event validation
sherlock deducing which apps post broken stuff
schemata-codegen typed language constructs that enable the compiler to catch structural mistakes like wrong position, missing field, bad marker value

Schemata — language packages

Data packages embed the schemas; validator packages provide validate() helpers.

Language Data Validator
Rust schemata-rs schemata-validator-rs
Kotlin schemata-kt schemata-validator-kt
Swift schemata-swift schemata-validator-swift
Go schemata-go schemata-validator-go
Dart schemata-dart schemata-validator-dart
Python schemata-py schemata-validator-py
Java schemata-java schemata-validator-java
PHP schemata-php schemata-validator-php
Ruby schemata-ruby schemata-validator-ruby
C schemata-c schemata-validator-c
C# schemata-csharp schemata-validator-csharp
C++ schemata-cpp schemata-validator-cpp

Resources

  • NIPs — Nostr Implementation Possibilities (protocol specs)
  • NostrHub — Community NIP extensions and proposals
  • Blossom — Blobs stored simply on mediaservers
  • Marmot — Marmot protocol
  • nostrapps.com — Directory of nostr applications

Pinned Loading

  1. nostrability nostrability Public template

    Left curve nostr broken stuff and interoperability tracker + json schema validation

    HTML 79

  2. schemata schemata Public

    Forked from sandwichfarm/schemata

    nostr protocol specification based on the widely supported and language agnostic JSON-Schema specification. Remote references to schemata available on Github Pages.

    JavaScript 8

  3. outbox outbox Public

    outbox performance measured

    TypeScript 1

  4. schemata-codegen schemata-codegen Public

    Nostr-aware code generator for schemata schemas: typed tag tuples, kind interfaces, runtime validators, and error messages.

    TypeScript 1

Repositories

Showing 10 of 35 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…