pub struct NostrConfig {Show 24 fields
pub enabled: bool,
pub relays: Vec<String>,
pub event_transport: NostrEventTransport,
pub allowed_npubs: Vec<String>,
pub socialgraph_root: Option<String>,
pub bootstrap_follows: Vec<String>,
pub social_graph_crawl_depth: u32,
pub mirror_max_follow_distance: Option<u32>,
pub max_write_distance: u32,
pub db_max_size_gb: u64,
pub spambox_max_size_gb: u64,
pub negentropy_only: bool,
pub overmute_threshold: f64,
pub mirror_kinds: Vec<u16>,
pub history_sync_author_chunk_size: usize,
pub history_sync_per_author_event_limit: usize,
pub history_sync_on_reconnect: bool,
pub full_text_note_history_follow_distance: Option<u32>,
pub full_text_note_history_max_relay_pages: usize,
pub decentralized_pubsub: bool,
pub decentralized_pubsub_forwarding: bool,
pub decentralized_pubsub_fanout: usize,
pub decentralized_pubsub_max_hops: u8,
pub decentralized_pubsub_max_event_bytes: usize,
}Fields§
§enabled: bool§relays: Vec<String>§event_transport: NostrEventTransportProvider used for Hashtree root/site event lookup and publication.
allowed_npubs: Vec<String>List of npubs allowed to write (blossom uploads). If empty, uses public_writes setting.
Social graph root pubkey (npub). Defaults to own key if not set.
bootstrap_follows: Vec<String>Pubkeys to seed into contacts.json when a new identity is initialized. Set to [] to opt out.
How many hops to crawl the social graph (default: 2)
mirror_max_follow_distance: Option<u32>Max follow distance to mirror into public event/profile indexes. Defaults to social_graph_crawl_depth when unset.
max_write_distance: u32Max follow distance for write access (default: 3)
db_max_size_gb: u64Max size for the trusted social graph store in GB (default: 10)
spambox_max_size_gb: u64Max size for the social graph spambox in GB (default: 1) Set to 0 for memory-only spambox (no on-disk DB)
negentropy_only: boolRequire relays to support NIP-77 negentropy for mirror history sync.
overmute_threshold: f64Threshold for treating a user as overmuted in mirrored profile indexing/search.
mirror_kinds: Vec<u16>Kinds mirrored from upstream relays for the trusted hashtree index.
How many graph authors to reconcile before checkpointing the mirror root.
Maximum mirrored history events to fetch per author during history sync.
history_sync_on_reconnect: boolRun a catch-up history sync after relay reconnects.
full_text_note_history_follow_distance: Option<u32>Fetch complete kind-1 history for authors up to this follow distance. Set to null to disable.
full_text_note_history_max_relay_pages: usizeMaximum relay pages per author for startup text-note history fetches. Set to 0 to skip the expensive startup text-note catch-up.
decentralized_pubsub: boolEnable experimental decentralized Nostr event pubsub when compiled with the experimental-decentralized-pubsub feature.
decentralized_pubsub_forwarding: boolForward decentralized pubsub traffic for peers with downstream interest.
decentralized_pubsub_fanout: usizeMaximum peers selected per decentralized pubsub send.
decentralized_pubsub_max_hops: u8Initial HTL for decentralized pubsub interest/inventory messages.
decentralized_pubsub_max_event_bytes: usizeMaximum Nostr event payload accepted on decentralized pubsub.
Implementations§
Source§impl NostrConfig
impl NostrConfig
pub fn active_relays(&self) -> Vec<String>
pub fn decentralized_pubsub_enabled(&self) -> bool
Trait Implementations§
Source§impl Clone for NostrConfig
impl Clone for NostrConfig
Source§fn clone(&self) -> NostrConfig
fn clone(&self) -> NostrConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for NostrConfig
impl Debug for NostrConfig
Source§impl Default for NostrConfig
impl Default for NostrConfig
Source§impl<'de> Deserialize<'de> for NostrConfig
impl<'de> Deserialize<'de> for NostrConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for NostrConfig
impl RefUnwindSafe for NostrConfig
impl Send for NostrConfig
impl Sync for NostrConfig
impl Unpin for NostrConfig
impl UnsafeUnpin for NostrConfig
impl UnwindSafe for NostrConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more