-----BEGIN NOSTR RELAY INFO-----
Hash: SHA256

relay_id: nostr-grpc-relay
version: 1.0.0
status: online
-----END NOSTR RELAY INFO-----

Nostr Relay

This relay implements the Nostr protocol with support for multiple transport layers. Connect using gRPC, HTTP/JSON (Connect), or standard WebSocket.


Connection Endpoints

gRPC (Native Binary)

nostr-grpc.x.bdw.to:443

High-performance binary protocol using Protocol Buffers over HTTP/2. For applications requiring low latency and high throughput.

Connect (HTTP/JSON)

https://nostr-grpc.x.bdw.to/nostr.v1.NostrRelay/*

Browser-compatible HTTP interface. Standard JSON over HTTP/1.1 or HTTP/2. CORS enabled.

WebSocket (Nostr Protocol)

wss://nostr-grpc.x.bdw.to/

Standard Nostr protocol implementation (NIP-01). Compatible with all Nostr clients: Damus, Amethyst, Snort, Iris, etc.


Supported NIPs


Implementation Details

Storage: SQLite with Write-Ahead Logging (WAL mode)
Event Format: Binary-first (Protocol Buffers + compressed JSON)
Validation: Full cryptographic signature and event ID verification
Subscriptions: Real-time event streaming with filter matching
Deletion: Hard delete (events are permanently removed)


Technical Notes

Events are stored in binary format using Protocol Buffers alongside compressed canonical JSON. This dual-storage approach provides both performance (binary queries) and compatibility (JSON export).

The relay validates all events before storage:

1. Verify event ID matches SHA256(canonical_json)
2. Verify schnorr signature against pubkey
3. Store in SQLite with indexed queries

Subscriptions use a shared manager across all three protocols. An event published via gRPC will be immediately broadcast to WebSocket subscribers and vice versa.


-----BEGIN PGP SIGNATURE-----
relay_fingerprint: a8f9c2e1d4b7a3f6
protocol_version: nostr_01
transport_types: grpc|connect|websocket
-----END PGP SIGNATURE-----

This relay runs on open-source software. Decentralized, censorship-resistant, user-owned.