A cli util for generating nostr events
Go to file
William Casarin 7cd4e8c188 dm docs
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-14 19:46:11 -07:00
.envrc initial commit 2022-04-14 07:52:29 -07:00
.gitignore initial commit 2022-04-14 07:52:29 -07:00
aes.c encrypted dms 2022-04-14 19:30:27 -07:00
aes.h encrypted dms 2022-04-14 19:30:27 -07:00
base64.c encrypted dms 2022-04-14 19:30:27 -07:00
base64.h encrypted dms 2022-04-14 19:30:27 -07:00
compiler.h initial commit 2022-04-14 07:52:29 -07:00
configurator.c initial commit 2022-04-14 07:52:29 -07:00
cursor.h initial commit 2022-04-14 07:52:29 -07:00
endian.h initial commit 2022-04-14 07:52:29 -07:00
hex.h initial commit 2022-04-14 07:52:29 -07:00
Makefile encrypted dms 2022-04-14 19:30:27 -07:00
nostril.c usage 2022-04-14 19:44:02 -07:00
random.h encrypted dms 2022-04-14 19:30:27 -07:00
README.md dm docs 2022-04-14 19:46:11 -07:00
sha256.c initial commit 2022-04-14 07:52:29 -07:00
sha256.h initial commit 2022-04-14 07:52:29 -07:00
shell.nix don't need openssl 2022-04-14 19:44:20 -07:00

nostril

A cli util for creating nostr events

TODO: support for tags, encrypted messages

Dependenices

libsecp256k1 is the only dependency

Examples

Generate an event:

$ ./nostril --sec <key> "this is a message"
{
  "id": "b5c18a4aa21231a77b09748a5e623d9c2f853aed09653934b80a10b66a7225fa",
  "pubkey": "fd3fdb0d0d8d6f9a7667b53211de8ae3c5246b79bdaf64ebac849d5148b5615f",
  "created_at": 1649948031,
  "kind": 1,
  "tags": [],
  "content": "testing something again",
  "sig": "5122b2fc0d9a1f1ca134e4ab6fc1c9e5795e2d558cf24e3c7d8c4a35f889130eebcbd604602092a89c8a48469e88753e08dabb472610ac628ec9db3aa6c24672"
}

Wrap event to send to a relay:

$ ./nostril --envelope --sec <key> "hello"
[
  "EVENT",
  {
    "id": "ed378d3fdda785c091e9311c6e6eeb075db349a163c5e38de95946f6013a8001",
    "pubkey": "fd3fdb0d0d8d6f9a7667b53211de8ae3c5246b79bdaf64ebac849d5148b5615f",
    "created_at": 1649948103,
    "kind": 1,
    "tags": [],
    "content": "hello",
    "sig": "9d9a49bbc66d4782030b24c71416965e790214d02a54ab132d960c2b02def0371c3d93e5a60a285c55e99721599d1332450731e2c6bb1114b96b591c6967f872"
  }
]

Send to a relay:

$ ./nostril --envelope --sec <key> "this is a message" | websocat wss://nostr-pub.wellorder.net

Send a nip04 DM:

$ ./nostril --envelope --dm <pubkey> --sec <key> "this is a secret" | websocat wss://nostr-pub.wellorder.net