Jimmy Flanagan on Nostr: import { getEventHash, signEvent, relayInit } from 'nostr-tools'; import * as fs from ...
import { getEventHash, signEvent, relayInit } from 'nostr-tools';
import * as fs from 'fs/promises';
// Replace with your actual keys
const sk = 'your_private_key_hex'; // keep this secret
const pk = 'your_public_key_hex'; // can be derived from sk if needed
async function postSignedProof() {
const proof = await fs.readFile('proof.txt.asc', 'utf8');
const event = {
kind: 1,
created_at: Math.floor(Date.now() / 1000),
tags: [],
content: proof,
pubkey: pk,
};
event.id = getEventHash(event);
event.sig = signEvent(event, sk);
const relay = relayInit('wss://relay.nostr.band');
relay.on('connect', () => {
console.log('Connected to relay');
let pub = relay.publish(event);
pub.on('ok', () => {
console.log('Event published successfully');
relay.close();
});
pub.on('failed', reason => {
console.error('Failed to publish:', reason);
relay.close();
});
});
relay.on('error', () => {
console.error('Failed to connect to relay');
});
await relay.connect();
}
postSignedProof();
Published at
2025-04-21 00:53:44Event JSON
{
"id": "7b320279f4ee8a8d4f1980c77d2cfb85d5ac11259b09016ba8de1b7966737996",
"pubkey": "7c76ac2d34972a54a45b64fdf6f973c9ccf5d50a554ff5680972756ba27b01c2",
"created_at": 1745196824,
"kind": 1,
"tags": [
[
"client",
"Nostur",
"31990:9be0be0fc079548233231614e4e1efc9f28b0db398011efeecf05fe570e5dd33:1685868693432"
]
],
"content": "import { getEventHash, signEvent, relayInit } from 'nostr-tools';\nimport * as fs from 'fs/promises';\n\n// Replace with your actual keys\nconst sk = 'your_private_key_hex'; // keep this secret\nconst pk = 'your_public_key_hex'; // can be derived from sk if needed\n\nasync function postSignedProof() {\n const proof = await fs.readFile('proof.txt.asc', 'utf8');\n\n const event = {\n kind: 1,\n created_at: Math.floor(Date.now() / 1000),\n tags: [],\n content: proof,\n pubkey: pk,\n };\n\n event.id = getEventHash(event);\n event.sig = signEvent(event, sk);\n\n const relay = relayInit('wss://relay.nostr.band');\n\n relay.on('connect', () =\u003e {\n console.log('Connected to relay');\n let pub = relay.publish(event);\n pub.on('ok', () =\u003e {\n console.log('Event published successfully');\n relay.close();\n });\n pub.on('failed', reason =\u003e {\n console.error('Failed to publish:', reason);\n relay.close();\n });\n });\n\n relay.on('error', () =\u003e {\n console.error('Failed to connect to relay');\n });\n\n await relay.connect();\n}\n\npostSignedProof();",
"sig": "6630a333f13a634e4063c790398c9904286f15569124eb8ede80e89de019024e7afd0368df7e91dcf5feb5176125e5c4e9dc1202d778a97ef6f6be6d12adff21"
}