Send a Solana Transaction Javascript-SDK

Hi All,

I am working on my first Solana transaction. I am struggling through a few issues. Here is the code I am working with.

const solanaWeb3 = require('@solana/web3.js');
console.log(solanaWeb3);

const {Keypair, Transaction, SystemProgram, LAMPORTS_PER_SOL} = require("@solana/web3.js");

let transaction = new Transaction();

transaction.add(
  SystemProgram.transfer({
    fromPubkey: fromKeypair.publicKey,
    toPubkey: toKeypair.publicKey,
    lamports: LAMPORTS_PER_SOL
  })
);

I am running my code from the command line. On issues, first, how do I connect this script to Solana Test Network? Second, how do I define the toPubkey and fromPubkey variables? Third, what are the fundemental essential elements for sending a transaction from Alice to Bob with the JavaScript-SDK? Fourth, what are lamports?

Any advice or suggestions would be greatly appreciated, thank you!

This post was flagged by the community and is temporarily hidden.

Solved.

const web3 =  require("@solana/web3.js");

(async () => {
  // Connect to cluster
  console.log(web3.clusterApiUrl('devnet'))
  const connection = new web3.Connection(
    web3.clusterApiUrl('devnet'),
    'confirmed',
  );
  // Uncomment the below command to test your connection to your node
  //console.log(await connection.getEpochInfo())

  // Using the secretkey to generate the keypair
  const secretkey = Uint8Array.from(['']);  

  //If you already have enough test sol in your account you can comment this out
  const airdropSignature = await connection.requestAirdrop(
    from.publicKey,
    web3.LAMPORTS_PER_SOL,
  );
  await connection.confirmTransaction(airdropSignature);

  // Add transfer instruction to transaction
  const transaction = new web3.Transaction().add(
    web3.SystemProgram.transfer({
      fromPubkey: from.publicKey,
      toPubkey: '',
      lamports: web3.LAMPORTS_PER_SOL / 100,
    }),
  );

  // Sign transaction, broadcast, and confirm
  const signature = await web3.sendAndConfirmTransaction(
    connection,
    transaction,
    [from],
  );
  console.log('SIGNATURE', signature);
})();

// SIGNATURE 36bvGs1ddyfYJeGudoDKm4fFW7HgULWKRz7vGgWjv3g33NsvQMgKyu9Mb9eGc8VuetVd2BVTyUVt7TeVU8j5dJ6V

Still facing challenges finding ways to generate the secret key from the passphrase, but with a secret key inserted, this code works.