Skip to content

Commit a222b8e

Browse files
docs: sort settings list A-Z
1 parent 3f269a3 commit a222b8e

1 file changed

Lines changed: 44 additions & 42 deletions

File tree

CONFIGURATION.md

Lines changed: 44 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -64,65 +64,67 @@ If you've set READ_REPLICAS to 4, you should configure RR0_ through RR3_.
6464

6565
Running `nostream` for the first time creates the settings file in `<project_root>/.nostr/settings.yaml`. If the file is not created and an error is thrown ensure that the `<project_root>/.nostr` folder exists. The configuration directory can be changed by setting the `NOSTR_CONFIG_DIR` environment variable. `nostream` will pick up any changes to this settings file without needing to restart.
6666

67+
The settings below are listed in alphabetical order by name. Please keep this table sorted when adding new entries.
68+
6769
| Name | Description |
6870
|---------------------------------------------|-------------------------------------------------------------------------------|
69-
| info.relay_url | Public-facing URL of your relay. (e.g. wss://relay.your-domain.com) |
70-
| info.name | Public name of your relay. (e.g. TBG's Public Relay) |
71+
| info.contact | Relay operator's contact. (e.g. mailto:operator@relay-your-domain.com) |
7172
| info.description | Public description of your relay. (e.g. Toronto Bitcoin Group Public Relay) |
73+
| info.name | Public name of your relay. (e.g. TBG's Public Relay) |
7274
| info.pubkey | Relay operator's Nostr pubkey in hex format. |
73-
| info.contact | Relay operator's contact. (e.g. mailto:operator@relay-your-domain.com) |
74-
| network.maxPayloadSize | Maximum number of bytes accepted per WebSocket frame |
75-
| network.remoteIpHeader | HTTP header from proxy containing IP address from client. |
76-
| payments.enabled | Enabled payments. Defaults to false. |
77-
| payments.processor | Either `zebedee`, `lnbits`, `lnurl`. |
78-
| payments.feeSchedules.admission[].enabled | Enables admission fee. Defaults to false. |
79-
| payments.feeSchedules.admission[].amount | Admission fee amount in msats. |
80-
| payments.feeSchedules.admission[].whitelists.pubkeys | List of pubkeys to waive admission fee. |
81-
| payments.feeSchedules.admission[].whitelists.event_kinds | List of event kinds to waive admission fee. Use `[min, max]` for ranges. |
82-
| paymentProcessors.zebedee.baseURL | Zebedee's API base URL. |
83-
| paymentProcessors.zebedee.callbackBaseURL | Public-facing Nostream's Zebedee Callback URL (e.g. https://relay.your-domain.com/callbacks/zebedee) |
84-
| paymentProcessors.zebedee.ipWhitelist | List with Zebedee's API Production IPs. See [ZBD API Documentation](https://api-reference.zebedee.io/#c7e18276-6935-4cca-89ae-ad949efe9a6a) for more info. |
85-
| paymentProcessors.lnbits.baseURL | Base URL of your Lnbits instance. |
86-
| paymentProcessors.lnbits.callbackBaseURL | Public-facing Nostream's Lnbits Callback URL. (e.g. https://relay.your-domain.com/callbacks/lnbits) |
87-
| paymentProcessors.lnurl.invoiceURL | [LUD-06 Pay Request](https://github.com/lnurl/luds/blob/luds/06.md) provider URL. (e.g. https://getalby.com/lnurlp/your-username) |
88-
| mirroring.static[].address | Address of mirrored relay. (e.g. ws://100.100.100.100:8008) |
89-
| mirroring.static[].filters | Subscription filters used to mirror. |
90-
| mirroring.static[].limits.event | Event limit overrides for this mirror. See configurations under limits.event. |
91-
| mirroring.static[].skipAdmissionCheck | Disable the admission fee check for events coming from this mirror. |
92-
| mirroring.static[].secret | Secret to pass to relays. Nostream relays only. Optional. |
93-
| workers.count | Number of workers to spin up to handle incoming connections. |
94-
| | Spin workers as many CPUs are available when set to zero. Defaults to zero. |
75+
| info.relay_url | Public-facing URL of your relay. (e.g. wss://relay.your-domain.com) |
76+
| limits.admissionCheck.ipWhitelist | List of IPs (IPv4 or IPv6) to ignore rate limits. |
77+
| limits.admissionCheck.rateLimits[].period | Rate limit period in milliseconds. |
78+
| limits.admissionCheck.rateLimits[].rate | Maximum number of admission checks during period. |
79+
| limits.client.subscription.maxFilters | Maximum number of filters per subscription. Defaults to 10. Disabled when set to zero. |
80+
| limits.client.subscription.maxSubscriptions | Maximum number of subscriptions per connected client. Defaults to 10. Disabled when set to zero. |
81+
| limits.event.content[].kinds | List of event kinds to apply limit. Use `[min, max]` for ranges. Optional. |
82+
| limits.event.content[].maxLength | Maximum length of `content`. Defaults to 1 MB. Disabled when set to zero. |
83+
| limits.event.createdAt.maxPositiveDelta | Maximum number of seconds an event's `created_at` can be in the future. Defaults to 900 (15 minutes). Disabled when set to zero. |
84+
| limits.event.createdAt.minNegativeDelta | Maximum number of secodns an event's `created_at` can be in the past. Defaults to zero. Disabled when set to zero. |
9585
| limits.event.eventId.minLeadingZeroBits | Leading zero bits required on every incoming event for proof of work. |
9686
| | Defaults to zero. Disabled when set to zero. |
97-
| limits.event.kind.whitelist | List of event kinds to always allow. Leave empty to allow any. |
9887
| limits.event.kind.blacklist | List of event kinds to always reject. Leave empty to allow any. |
88+
| limits.event.kind.whitelist | List of event kinds to always allow. Leave empty to allow any. |
89+
| limits.event.pubkey.blacklist | List of public keys to always reject. Public keys in this list will not be able to post to this relay. |
9990
| limits.event.pubkey.minLeadingZeroBits | Leading zero bits required on the public key of incoming events for proof of work. |
10091
| | Defaults to zero. Disabled when set to zero. |
10192
| limits.event.pubkey.whitelist | List of public keys to always allow. Only public keys in this list will be able to post to this relay. Use for private relays. |
102-
| limits.event.pubkey.blacklist | List of public keys to always reject. Public keys in this list will not be able to post to this relay. |
103-
| limits.event.createdAt.maxPositiveDelta | Maximum number of seconds an event's `created_at` can be in the future. Defaults to 900 (15 minutes). Disabled when set to zero. |
104-
| limits.event.createdAt.minNegativeDelta | Maximum number of secodns an event's `created_at` can be in the past. Defaults to zero. Disabled when set to zero. |
105-
| limits.event.content[].kinds | List of event kinds to apply limit. Use `[min, max]` for ranges. Optional. |
106-
| limits.event.content[].maxLength | Maximum length of `content`. Defaults to 1 MB. Disabled when set to zero. |
10793
| limits.event.rateLimits[].kinds | List of event kinds rate limited. Use `[min, max]` for ranges. Optional. |
10894
| limits.event.rateLimits[].period | Rate limiting period in milliseconds. |
10995
| limits.event.rateLimits[].rate | Maximum number of events during period. |
110-
| limits.event.whitelists.pubkeys | List of public keys to ignore rate limits. |
111-
| limits.event.whitelists.ipAddresses | List of IPs (IPv4 or IPv6) to ignore rate limits. |
112-
| limits.event.retention.maxDays | Maximum number of days to retain events. Purge deletes events that are expired (`expires_at`), soft-deleted (`deleted_at`), or older than this window (`created_at`). Any non-positive value disables retention purge. |
11396
| limits.event.retention.kind.whitelist | Event kinds excluded from retention purge. NIP-62 `REQUEST_TO_VANISH` is always excluded from retention purge, even if not listed here. |
97+
| limits.event.retention.maxDays | Maximum number of days to retain events. Purge deletes events that are expired (`expires_at`), soft-deleted (`deleted_at`), or older than this window (`created_at`). Any non-positive value disables retention purge. |
11498
| limits.event.retention.pubkey.whitelist | Public keys excluded from retention purge. |
115-
| limits.client.subscription.maxSubscriptions | Maximum number of subscriptions per connected client. Defaults to 10. Disabled when set to zero. |
116-
| limits.client.subscription.maxFilters | Maximum number of filters per subscription. Defaults to 10. Disabled when set to zero. |
99+
| limits.event.whitelists.ipAddresses | List of IPs (IPv4 or IPv6) to ignore rate limits. |
100+
| limits.event.whitelists.pubkeys | List of public keys to ignore rate limits. |
101+
| limits.message.ipWhitelist | List of IPs (IPv4 or IPv6) to ignore rate limits. |
117102
| limits.message.rateLimits[].period | Rate limit period in milliseconds. |
118103
| limits.message.rateLimits[].rate | Maximum number of messages during period. |
119-
| limits.message.ipWhitelist | List of IPs (IPv4 or IPv6) to ignore rate limits. |
120-
| limits.admissionCheck.rateLimits[].period | Rate limit period in milliseconds. |
121-
| limits.admissionCheck.rateLimits[].rate | Maximum number of admission checks during period. |
122-
| limits.admissionCheck.ipWhitelist | List of IPs (IPv4 or IPv6) to ignore rate limits. |
104+
| mirroring.static[].address | Address of mirrored relay. (e.g. ws://100.100.100.100:8008) |
105+
| mirroring.static[].filters | Subscription filters used to mirror. |
106+
| mirroring.static[].limits.event | Event limit overrides for this mirror. See configurations under limits.event. |
107+
| mirroring.static[].secret | Secret to pass to relays. Nostream relays only. Optional. |
108+
| mirroring.static[].skipAdmissionCheck | Disable the admission fee check for events coming from this mirror. |
109+
| network.maxPayloadSize | Maximum number of bytes accepted per WebSocket frame |
110+
| network.remoteIpHeader | HTTP header from proxy containing IP address from client. |
111+
| nip05.domainBlacklist | List of domains blocked from NIP-05 verification. Authors with NIP-05 at these domains will be rejected. |
112+
| nip05.domainWhitelist | List of domains allowed for NIP-05 verification. If set, only authors verified at these domains can publish. |
113+
| nip05.maxConsecutiveFailures | Number of consecutive verification failures before giving up on an author. Defaults to 20. |
123114
| nip05.mode | NIP-05 verification mode: `enabled` requires verification, `passive` verifies without blocking, `disabled` does nothing. Defaults to `disabled`. |
124115
| nip05.verifyExpiration | Time in milliseconds before a successful NIP-05 verification expires and needs re-checking. Defaults to 604800000 (1 week). |
125116
| nip05.verifyUpdateFrequency | Minimum interval in milliseconds between re-verification attempts for a given author. Defaults to 86400000 (24 hours). |
126-
| nip05.maxConsecutiveFailures | Number of consecutive verification failures before giving up on an author. Defaults to 20. |
127-
| nip05.domainWhitelist | List of domains allowed for NIP-05 verification. If set, only authors verified at these domains can publish. |
128-
| nip05.domainBlacklist | List of domains blocked from NIP-05 verification. Authors with NIP-05 at these domains will be rejected. |
117+
| paymentProcessors.lnbits.baseURL | Base URL of your Lnbits instance. |
118+
| paymentProcessors.lnbits.callbackBaseURL | Public-facing Nostream's Lnbits Callback URL. (e.g. https://relay.your-domain.com/callbacks/lnbits) |
119+
| paymentProcessors.lnurl.invoiceURL | [LUD-06 Pay Request](https://github.com/lnurl/luds/blob/luds/06.md) provider URL. (e.g. https://getalby.com/lnurlp/your-username) |
120+
| paymentProcessors.zebedee.baseURL | Zebedee's API base URL. |
121+
| paymentProcessors.zebedee.callbackBaseURL | Public-facing Nostream's Zebedee Callback URL (e.g. https://relay.your-domain.com/callbacks/zebedee) |
122+
| paymentProcessors.zebedee.ipWhitelist | List with Zebedee's API Production IPs. See [ZBD API Documentation](https://api-reference.zebedee.io/#c7e18276-6935-4cca-89ae-ad949efe9a6a) for more info. |
123+
| payments.enabled | Enabled payments. Defaults to false. |
124+
| payments.feeSchedules.admission[].amount | Admission fee amount in msats. |
125+
| payments.feeSchedules.admission[].enabled | Enables admission fee. Defaults to false. |
126+
| payments.feeSchedules.admission[].whitelists.event_kinds | List of event kinds to waive admission fee. Use `[min, max]` for ranges. |
127+
| payments.feeSchedules.admission[].whitelists.pubkeys | List of pubkeys to waive admission fee. |
128+
| payments.processor | Either `zebedee`, `lnbits`, `lnurl`. |
129+
| workers.count | Number of workers to spin up to handle incoming connections. |
130+
| | Spin workers as many CPUs are available when set to zero. Defaults to zero. |

0 commit comments

Comments
 (0)