Relay Discovery
Automatically discover Nostr relays from public APIs (nostr.watch) and seed lists. Track over 8,800+ relays across clearnet and Tor networks.
BigBrotr is a production-ready, modular system for archiving and monitoring the Nostr protocol ecosystem. Built with Python 3.9+ and PostgreSQL 16+, it provides comprehensive tools for relay discovery, health monitoring, and event synchronization across both clearnet and Tor networks.
BigBrotr follows a three-layer architecture that separates concerns and enables maximum flexibility:
Relay Discovery
Automatically discover Nostr relays from public APIs (nostr.watch) and seed lists. Track over 8,800+ relays across clearnet and Tor networks.
Health Monitoring
Continuous NIP-11 and NIP-66 compliance testing with round-trip time (RTT) measurements. Monitor relay capabilities: openable, readable, writable.
Event Synchronization
High-performance multicore event collection using aiomultiprocess. Incremental sync with per-relay timestamp tracking for efficient updates.
Tor Network Support
Full support for .onion relay addresses via SOCKS5 proxy. Separate timeout configurations for Tor relays.
SQL Analytics
Pre-built views for statistics, event analysis, and relay metrics. Ready-to-query analytics without complex SQL.
BigBrotr’s architecture enables multiple deployment configurations from the same codebase:
| Implementation | Storage | Tor Support | Use Case |
|---|---|---|---|
| BigBrotr | Full (id, pubkey, created_at, kind, tags, content, sig) | Enabled | Complete archiving with full event data |
| LilBrotr | Essential (id, pubkey, created_at, kind, sig) | Disabled | Lightweight indexing without heavy content |
Both implementations index all events - LilBrotr simply omits the storage-heavy tags and content fields, saving ~60% disk space while retaining core event metadata for analytics and queries.
| Technology | Purpose |
|---|---|
| Python 3.9+ | Primary programming language |
| PostgreSQL 16+ | Primary data storage with PGBouncer pooling |
| asyncpg | High-performance async PostgreSQL driver |
| Pydantic | Configuration validation and type safety |
| aiomultiprocess | Multicore async processing |
| Docker | Containerized deployment |
Quick Start
Deploy BigBrotr in minutes with Docker Compose. Get started →
Architecture
Understand the three-layer architecture and design patterns. Learn more →
Services
Explore the Initializer, Finder, Monitor, and Synchronizer services. View services →
Database
Learn about the schema, tables, views, and stored procedures. View schema →
BigBrotr is open source under the MIT license. Contributions are welcome!