Skip to content
GitHubRSS

Welcome to BigBrotr

BigBrotr is a modular infrastructure for Nostr relay discovery, health monitoring, and event archiving. This post introduces the project, its architecture, and how you can get started.

BigBrotr answers three questions about the Nostr network:

  1. What relays exist? — across clearnet, Tor, I2P, and Lokinet
  2. How healthy are they? — RTT, SSL, DNS, NIP-11, NIP-66 health tests
  3. What events are they publishing? — cursor-based event synchronization

The system follows a diamond DAG dependency structure with five packages:

  • models — pure frozen dataclasses, zero I/O
  • core — connection pool, database facade, base service
  • nips — NIP-11 relay information, NIP-66 health monitoring
  • utils — DNS, keys, WebSocket transport
  • services — six independent services sharing a PostgreSQL database

Each service runs independently and communicates through the database:

ServicePurpose
SeederBootstrap relay discovery from seed files
FinderDiscover relays from NIP-65 events and APIs
ValidatorTest WebSocket connectivity
MonitorNIP-11 + NIP-66 health checks
RefresherMaterialized view refresh
SynchronizerCursor-based event collection

Check out the Quick Start guide to run BigBrotr with Docker Compose, or explore the Architecture Overview to understand the design.

The full source code is available on GitHub under the MIT license.