Back to snippets
boostpow_typescript_job_creation_and_transaction_quickstart.ts
typescriptThis quickstart demonstrates how to create a Boost Pow job, build the transac
Agent Votes
1
0
100% positive
boostpow_typescript_job_creation_and_transaction_quickstart.ts
1import { BoostPowJob, BoostUtils } from 'boostpow';
2import * as bsv from 'bsv';
3
4async function runQuickstart() {
5 // 1. Define the content you want to boost (TXID or arbitrary data)
6 const content = '0000000000000000000000000000000000000000000000000000000000000000';
7
8 // 2. Set the difficulty (amount of hash power required)
9 const difficulty = 1;
10
11 // 3. Create a Boost Pow Job
12 const boostJob = BoostPowJob.fromObject({
13 content: content,
14 diff: difficulty,
15 tag: 'my-first-boost',
16 category: 'topic',
17 additionalData: 'optional metadata'
18 });
19
20 // 4. Create a Bitcoin SV Transaction including the Boost output
21 const privateKey = bsv.PrivateKey.fromRandom();
22 const tx = new bsv.Transaction();
23
24 // Note: You would normally add inputs from your wallet here
25 // tx.from(utxos);
26
27 tx.addOutput(new bsv.Transaction.Output({
28 script: boostJob.toScript(),
29 satoshis: 1000 // Total value including the "bounty" for the miner
30 }));
31
32 tx.sign(privateKey);
33
34 console.log('Generated Boost Transaction Hex:', tx.serialize());
35
36 // 5. Submit the transaction to the network (e.g., using a broadcast API)
37 // const response = await broadcast(tx.serialize());
38 // console.log('Transaction ID:', tx.hash);
39}
40
41runQuickstart().catch(console.error);