Commit Graph

51 Commits

Author SHA1 Message Date
19664ac56c build: Default port to 4413 2026-03-14 17:37:37 +01:00
708e26e4f4 buid/test/docs: Docker image, Darwin fix, logo 2026-03-14 17:08:07 +01:00
8c8d5a8abb chore: bump version to 0.3.0 v0.3.0 2026-03-14 13:06:24 +01:00
0fbd7008a1 Use explicit Postgrex JSON types with Elixir JSON module 2026-03-14 11:24:06 +01:00
bfdb06b203 Restrict metrics access and add optional dedicated metrics listener 2026-03-14 04:56:45 +01:00
36365710a8 Harden NEG session handling and gate feature wiring 2026-03-14 04:56:45 +01:00
e12085af2f Add signature verification and lossless event tag storage 2026-03-14 04:20:42 +01:00
18e429e05a Fix medium findings: deletion coords, count SQL, cache startup 2026-03-14 04:15:37 +01:00
c7a9f152f9 Harden ingress limits, AUTH validation, and search escaping 2026-03-14 04:09:02 +01:00
238b44ff03 docs: Opus review 2026-03-14 03:59:26 +01:00
680a73ee33 build: add lib_secp256k1 dep 2026-03-14 03:58:24 +01:00
63d3e7d55f build: Darwin fix 2026-03-14 03:17:36 +01:00
54a54c026b Improve ingest throughput with moderation cache and post-ack fanout 2026-03-14 02:33:37 +01:00
d348eab69e fix/test: benchmark 2026-03-14 02:23:08 +01:00
b20dbf67df chore: Bump version to 0.2.0 v0.2.0 2026-03-14 01:48:35 +01:00
6965a880d6 Add nostr-rs-relay to multi-relay bench comparison 2026-03-14 01:44:32 +01:00
3b6dd0adc3 Add nostr bench tooling and mix bench comparison 2026-03-14 01:37:10 +01:00
9616383e19 Add generic E2E harness and Marmot TS relay test suite 2026-03-14 00:32:34 +01:00
d95cd1cb33 docs: relay_info strings 2026-03-14 00:17:31 +01:00
1199369dd9 test: NAME:
nak - the nostr army knife command-line tool

USAGE:
   nak [global options] [command [command options]]

VERSION:
   0.17.3

COMMANDS:
   event    generates an encoded event and either prints it or sends it to a set of relays
   req      generates encoded REQ messages and optionally use them to talk to relays
   filter   applies an event filter to an event to see if it matches.
   fetch    fetches events related to the given nip19 or nip05 code from the included relay hints or the author's outbox relays.
   count    generates encoded COUNT messages and optionally use them to talk to relays
   decode   decodes nip19, nip21, nip05 or hex entities
   encode   encodes notes and other stuff to nip19 entities
   key      operations on secret keys: generate, derive, encrypt, decrypt
   verify   checks the hash and signature of an event given through stdin or as the first argument
   relay    gets the relay information document for the given relay, as JSON
   admin    manage relays using the relay management API
   bunker   starts a nip46 signer daemon with the given --sec key
   serve    starts an in-memory relay for testing purposes
   blossom  an army knife for blossom things
   dekey    handles NIP-4E decoupled encryption keys
   encrypt  encrypts a string with nip44 (or nip04 if specified using a flag) and returns the resulting ciphertext as base64
   decrypt  decrypts a base64 nip44 ciphertext (or nip04 if specified using a flag) and returns the resulting plaintext
   gift     gift-wraps (or unwraps) an event according to NIP-59
   outbox   manage outbox relay hints database
   wallet   displays the current wallet balance
   mcp      pander to the AI gods
   curl     calls curl but with a nip98 header
   fs       mount a FUSE filesystem that exposes Nostr events as files.
   publish  publishes a note with content from stdin
   git      git-related operations
   nip      list NIPs or get the description of a NIP from its number
   sync     sync events between two relays using negentropy
   spell    downloads a spell event and executes its REQ request
   help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --quiet, -q    do not print logs and info messages to stderr, use -qq to also not print anything to stdout (default: false)
   --verbose, -v  print more stuff than normally (default: false)
   --help, -h     show help
   --version      prints the version (default: false) based E2E tests
2026-03-14 00:15:06 +01:00
cc9c18b38c docs+nix: add deployment README and align release packaging 2026-03-13 22:54:18 +01:00
f2a6ab5150 Implement M7 Marmot hardening telemetry and ops checks 2026-03-13 22:40:36 +01:00
99983bbb32 Remove legacy nip_ee_mls feature-gating code 2026-03-13 22:33:48 +01:00
c1bebd5553 Implement M6 push notification policy guards and replay tests 2026-03-13 22:27:34 +01:00
a42c2b656e Implement M5 media metadata policy hooks and query coverage 2026-03-13 22:21:28 +01:00
619c1a0bdf Implement M4 Marmot group envelope and fanout hardening 2026-03-13 22:12:45 +01:00
1547d00215 Harden M3 giftwrap recipient gating in storage adapters 2026-03-13 22:07:39 +01:00
3bf1b22103 Complete MIP-02 recipient-gated welcome conformance tests 2026-03-13 22:04:49 +01:00
f439969fb3 Harden MIP-02 welcome and wrapped payload validation 2026-03-13 22:02:07 +01:00
fff507d760 Implement MIP-01 #h query guardrails and ordering tests 2026-03-13 21:58:53 +01:00
cf5ae772b2 Implement MIP-00 keypackage envelope validation 2026-03-13 21:54:07 +01:00
7646650fb9 Document Marmot interoperability architecture and progress plan 2026-03-13 21:48:45 +01:00
d9d234c6e9 build: marmot-ts submodule 2026-03-13 21:43:51 +01:00
d24d5885a0 Implement relay auth, management, lifecycle and hardening phases 2026-03-13 21:31:34 +01:00
3b66ed1996 Add bounded outbound queue backpressure to connections 2026-03-13 20:58:28 +01:00
df3f2dae8d Add ETS subscription index with candidate narrowing 2026-03-13 20:53:43 +01:00
336b192492 Implement remaining Postgres storage adapters and contracts 2026-03-13 20:46:50 +01:00
693786615f storage: implement postgres event query/count filter translation 2026-03-13 20:37:32 +01:00
cd1adf94f0 storage: add initial postgres event persistence and schema migration 2026-03-13 20:29:58 +01:00
7ec588805b storage: add behavior boundary and postgres adapter skeleton 2026-03-13 20:20:58 +01:00
307372fdfe docs: lock postgres architecture defaults before implementation 2026-03-13 20:17:32 +01:00
73811c0772 Implement per-connection subscription lifecycle and EOSE semantics 2026-03-13 20:03:14 +01:00
0c04859b97 Add NIP-01 filter validation and AND/OR matching engine 2026-03-13 20:00:38 +01:00
eb4fbcc2c9 Implement strict NIP-01 event validation and canonical reply prefixes 2026-03-13 19:56:51 +01:00
86b7156429 build/docs: precommit, other server study 2026-03-13 19:51:52 +01:00
953ccb60f4 phase1: add websocket edge and nostr message codec 2026-03-13 19:00:41 +01:00
5e478cd305 phase0: add app skeleton, config cache, and precommit alias 2026-03-13 18:56:23 +01:00
cc78558612 build/docs: architecture, deps 2026-03-13 18:52:13 +01:00
e9ae29d899 docs: AGENTS 2026-03-13 18:18:51 +01:00
001748613e init: igniter.new 2026-03-13 17:45:43 +01:00