Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dynamic Configs #199

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion resources/default-settings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ payments:
feeSchedules:
admission:
- enabled: false
descripton: Admission fee charged per public key in msats (1000 msats = 1 satoshi)
description: Admission fee charged per public key in msats (1000 msats = 1 satoshi)
amount: 1000000
whitelists:
pubkeys:
Expand Down
368 changes: 368 additions & 0 deletions seeds/configs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,368 @@
[
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
antonleviathan marked this conversation as resolved.
Show resolved Hide resolved
"key": "relay_url",
"value": "wss://nostream.your-domain.com",
"category": "info"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "name",
"value": "nostream.your-domain.com",
"category": "info"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "description",
"value": "A nostr relay written in Typescript.",
"category": "info"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "pubkey",
"value": "replace-with-your-pubkey-in-hex",
"category": "info"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "contact",
"value": "[email protected]",
"category": "info"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "enabled",
"value": false,
"category": "authentication"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "enabled",
"value": false,
"category": "payments"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "processor",
"value": "zebedee",
"category": "payments"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "feeSchedules",
"value": {
"admission": [
{
"enabled": false,
"description": "Admission fee charged per public key in msats (1000 msats = 1 satoshi)",
"amount": 1000000,
"whitelists": {
"pubkeys": [
"replace-with-your-pubkey-in-hex"
]
}
}
],
"publication": [
{
"enabled": false,
"description": "Publication fee charged per event in msats (1000 msats = 1 satoshi)",
"amount": 10,
"whitelists": {
"pubkeys": [
"replace-with-your-pubkey-in-hex"
]
}
}
]
},
"category": "payments"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "zebedee",
"value": {
"baseURL": "https://api.zebedee.io/",
"callbackBaseURL": "https://nostream.your-domain.com/callbacks/zebedee",
"ipWhitelist": [
"3.225.112.64",
"::ffff:3.225.112.64"
]
},
"category": "paymentsProcessors"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "maxPayloadSize",
"value": 131072,
"category": "network"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "remoteIpHeader",
"value": "x-forwarded-for",
"category": "network"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "idleTimeout",
"value": 60,
"category": "network"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "count",
"value": 0,
"category": "workers"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "static",
"value": [],
"category": "mirroring"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "invoice",
"value": {
"rateLimits": [
{
"period": 60000,
"rate": 3
},
{
"period": 3600000,
"rate": 10
},
{
"period": 86400000,
"rate": 20
}
],
"ipWhitelist": [
"::1",
"10.10.10.1",
"::ffff:10.10.10.1"
]
},
"category": "limits"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "connection",
"value": {
"rateLimits": [
{
"period": 1000,
"rate": 6
},
{
"period": 60000,
"rate": 30
},
{
"period": 3600000,
"rate": 300
},
{
"period": 86400000,
"rate": 1440
}
],
"ipWhitelist": [
"::1",
"10.10.10.1",
"::ffff:10.10.10.1"
]
},
"category": "limits"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "event",
"value": {
"eventId": {
"minLeadingZeroBits": 0
},
"kind": {
"whitelist": [],
"blacklist": []
},
"pubkey": {
"minBalance": 0,
"minLeadingZeroBits": 0,
"whitelist": [],
"blacklist": []
},
"createdAt": {
"maxPositiveDelta": 900,
"maxNegativeDelta": 0
},
"content": [
{
"description": "64 KB for event kind ranges 0-10 and 40-49",
"kinds": [
[
0,
10
],
[
40,
49
]
],
"maxLength": 65536
},
{
"description": "96 KB for event kind ranges 11-39 and 50-max",
"kinds": [
[
11,
39
],
[
50,
9007199254740991
]
],
"maxLength": 98304
}
],
"rateLimits": [
{
"description": "6 events/min for event kinds 0, 3, 40 and 41",
"kinds": [
0,
3,
40,
41
],
"period": 60000,
"rate": 6
},
{
"description": "12 events/min for event kinds 1, 2, 4 and 42",
"kinds": [
1,
2,
4,
42
],
"period": 60000,
"rate": 12
},
{
"description": "360 events/hour for event kinds 1, 2, 4 and 42",
"kinds": [
1,
2,
4,
42
],
"period": 3600000,
"rate": 360
},
{
"description": "30 events/min for event kind ranges 5-7 and 43-49",
"kinds": [
[
5,
7
],
[
43,
49
]
],
"period": 60000,
"rate": 30
},
{
"description": "24 events/min for replaceable events and parameterized replaceable events",
"kinds": [
[
10000,
19999
],
[
30000,
39999
]
],
"period": 60000,
"rate": 24
},
{
"description": "60 events/min for ephemeral events",
"kinds": [
[
20000,
29999
]
],
"period": 60000,
"rate": 60
},
{
"description": "720 events/hour for all events",
"period": 3600000,
"rate": 720
},
{
"description": "2880 events/day for all events",
"period": 86400000,
"rate": 2880
}
],
"whitelists": {
"pubkeys": [],
"ipAddresses": [
"::1",
"10.10.10.1",
"::ffff:10.10.10.1"
]
}
},
"category": "limits"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "client",
"value": {
"subscription": {
"maxSubscriptions": 10,
"maxFilters": 10
}
},
"category": "limits"
},
{
"id": "b3b5fb49-4e95-567b-ab64-2d92b7957b13",
"key": "message",
"value": {
"rateLimits": [
{
"description": "120 raw messages/min",
"period": 60000,
"rate": 120
},
{
"description": "3600 raw messages/hour",
"period": 3600000,
"rate": 3600
},
{
"description": "86400 raw messages/day",
"period": 86400000,
"rate": 86400
}
],
"ipWhitelist": [
"::1",
"10.10.10.1",
"::ffff:10.10.10.1"
]
},
"category": "limits"
}
]
Loading