Compare commits
11 Commits
f9b877e1d6
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 11a632bf92 | |||
|
|
de1f95563a | ||
|
|
29e07fb7c6 | ||
|
|
f5a783ed40 | ||
|
|
6b3fb6c2ab | ||
|
|
4bc60eb040 | ||
|
|
7b17c10d4e | ||
|
|
f6e4bb642f | ||
|
|
28d5abaf0d | ||
|
|
be0fd98f54 | ||
|
|
0af0b8ff7e |
BIN
docs/assets/Tokenexplorer.png
Normal file
BIN
docs/assets/Tokenexplorer.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 135 KiB |
14
readme.md
Normal file
14
readme.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Solana Starter
|
||||
|
||||
Token Address: `6cEVBKWwj1haj1gafHypmgxEKu5iKnML5QWck75Tcswk`
|
||||
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
### Transaction
|
||||
|
||||
View on [Solana Explorer](https://explorer.solana.com/tx/UxzAxb42GrzLnJH6CvnPgRAcY9ZtvdS8UGBo2rrAm7bnH2w8xNsFc1BRB7FKYBDxQLJw5DWKKSnXZ3m2cj224q3?cluster=devnet)
|
||||
|
||||
Blockhash: `D9VDkqnCdGHBwEAFk7Et23ZnD1yHWcyyHHDV7C25GeBG`<br>Signature: `UxzAxb42GrzLnJH6CvnPgRAcY9ZtvdS8UGBo2rrAm7bnH2w8xNsFc1BRB7FKYBDxQLJw5DWKKSnXZ3m2cj224q3`
|
||||
@@ -1,20 +1,24 @@
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "../turbin3-wallet.json"
|
||||
import { createUmi } from "@metaplex-foundation/umi-bundle-defaults"
|
||||
import { createGenericFile, createSignerFromKeypair, signerIdentity } from "@metaplex-foundation/umi"
|
||||
import { createBundlrUploader } from "@metaplex-foundation/umi-uploader-bundlr"
|
||||
import { irysUploader } from "@metaplex-foundation/umi-uploader-irys"
|
||||
import { readFile } from "fs/promises"
|
||||
|
||||
// Create a devnet connection
|
||||
const umi = createUmi('https://api.devnet.solana.com');
|
||||
const bundlrUploader = createBundlrUploader(umi);
|
||||
|
||||
let keypair = umi.eddsa.createKeypairFromSecretKey(new Uint8Array(wallet));
|
||||
const signer = createSignerFromKeypair(umi, keypair);
|
||||
|
||||
umi.use(irysUploader());
|
||||
umi.use(signerIdentity(signer));
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
//1. Load image
|
||||
//2. Convert image to generic file.
|
||||
//3. Upload image
|
||||
|
||||
// const image = ???
|
||||
|
||||
// const [myUri] = ???
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "../turbin3-wallet.json"
|
||||
import { createUmi } from "@metaplex-foundation/umi-bundle-defaults"
|
||||
import { createGenericFile, createSignerFromKeypair, signerIdentity } from "@metaplex-foundation/umi"
|
||||
import { createBundlrUploader } from "@metaplex-foundation/umi-uploader-bundlr"
|
||||
import { irysUploader } from "@metaplex-foundation/umi-uploader-irys"
|
||||
|
||||
// Create a devnet connection
|
||||
const umi = createUmi('https://api.devnet.solana.com');
|
||||
const bundlrUploader = createBundlrUploader(umi);
|
||||
|
||||
let keypair = umi.eddsa.createKeypairFromSecretKey(new Uint8Array(wallet));
|
||||
const signer = createSignerFromKeypair(umi, keypair);
|
||||
|
||||
umi.use(irysUploader());
|
||||
umi.use(signerIdentity(signer));
|
||||
|
||||
(async () => {
|
||||
@@ -37,9 +37,9 @@ umi.use(signerIdentity(signer));
|
||||
// creators: []
|
||||
// };
|
||||
// const myUri = ???
|
||||
// console.log("Your image URI: ", myUri);
|
||||
// console.log("Your metadata URI: ", myUri);
|
||||
}
|
||||
catch(error) {
|
||||
console.log("Oops.. Something went wrong", error);
|
||||
}
|
||||
})();
|
||||
})();
|
||||
|
||||
@@ -2,7 +2,7 @@ import { createUmi } from "@metaplex-foundation/umi-bundle-defaults"
|
||||
import { createSignerFromKeypair, signerIdentity, generateSigner, percentAmount } from "@metaplex-foundation/umi"
|
||||
import { createNft, mplTokenMetadata } from "@metaplex-foundation/mpl-token-metadata";
|
||||
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "../turbin3-wallet.json"
|
||||
import base58 from "bs58";
|
||||
|
||||
const RPC_ENDPOINT = "https://api.devnet.solana.com";
|
||||
|
||||
@@ -1,19 +1,28 @@
|
||||
import { Keypair, Connection, Commitment } from "@solana/web3.js";
|
||||
import { createMint } from '@solana/spl-token';
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "/home/sortedcord/.config/solana/id.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
|
||||
//Create a Solana devnet connection
|
||||
const commitment: Commitment = "confirmed";
|
||||
const connection = new Connection("https://api.devnet.solana.com", commitment);
|
||||
const connection = new Connection("https://api.devnet.solana.com", commitment); // describes when a txn is to be done
|
||||
// avoid processed
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
// Start here
|
||||
// const mint = ???
|
||||
} catch(error) {
|
||||
const mint = await createMint(
|
||||
connection,
|
||||
keypair,
|
||||
keypair.publicKey,
|
||||
null,
|
||||
6
|
||||
);
|
||||
console.log(`successfully created a mint ${mint}`);
|
||||
|
||||
|
||||
} catch (error) {
|
||||
console.log(`Oops, something went wrong: ${error}`)
|
||||
}
|
||||
})()
|
||||
})();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "../turbin3-wallet.json"
|
||||
import { createUmi } from "@metaplex-foundation/umi-bundle-defaults"
|
||||
import {
|
||||
createMetadataAccountV3,
|
||||
@@ -7,6 +7,7 @@ import {
|
||||
DataV2Args
|
||||
} from "@metaplex-foundation/mpl-token-metadata";
|
||||
import { createSignerFromKeypair, signerIdentity, publicKey } from "@metaplex-foundation/umi";
|
||||
import { bs58 } from "@coral-xyz/anchor/dist/cjs/utils/bytes";
|
||||
|
||||
// Define our Mint address
|
||||
const mint = publicKey("<mint address>")
|
||||
@@ -40,9 +41,9 @@ umi.use(signerIdentity(createSignerFromKeypair(umi, keypair)));
|
||||
// }
|
||||
// )
|
||||
|
||||
// let result = await tx.sendAndConfirm(umi).then(r => r.signature.toString());
|
||||
// console.log(result);
|
||||
// let result = await tx.sendAndConfirm(umi);
|
||||
// console.log(bs58.encode(result.signature));
|
||||
} catch(e) {
|
||||
console.error(`Oops, something went wrong: ${e}`)
|
||||
}
|
||||
})();
|
||||
})();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { Keypair, PublicKey, Connection, Commitment } from "@solana/web3.js";
|
||||
import { getOrCreateAssociatedTokenAccount, mintTo } from '@solana/spl-token';
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "/home/sortedcord/.config/solana/id.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
@@ -9,21 +9,21 @@ const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
const commitment: Commitment = "confirmed";
|
||||
const connection = new Connection("https://api.devnet.solana.com", commitment);
|
||||
|
||||
const token_decimals = 1_000_000n;
|
||||
const token_decimals = 500_000n;
|
||||
|
||||
// Mint address
|
||||
const mint = new PublicKey("<mint address>");
|
||||
const mint = new PublicKey("6cEVBKWwj1haj1gafHypmgxEKu5iKnML5QWck75Tcswk");
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
// Create an ATA
|
||||
// const ata = ???
|
||||
// console.log(`Your ata is: ${ata.address.toBase58()}`);
|
||||
const ata = await getOrCreateAssociatedTokenAccount(connection, keypair, mint, keypair.publicKey)
|
||||
console.log(`Your ata is: ${ata.address.toBase58()}`);
|
||||
|
||||
// Mint to ATA
|
||||
// const mintTx = ???
|
||||
// console.log(`Your mint txid: ${mintTx}`);
|
||||
} catch(error) {
|
||||
const mintTx = await mintTo(connection, keypair, mint, ata.address, keypair.publicKey, 67)
|
||||
console.log(`Your mint txid: ${mintTx}`);
|
||||
} catch (error) {
|
||||
console.log(`Oops, something went wrong: ${error}`)
|
||||
}
|
||||
})()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Commitment, Connection, Keypair, LAMPORTS_PER_SOL, PublicKey } from "@solana/web3.js"
|
||||
import wallet from "../wba-wallet.json"
|
||||
import wallet from "../turbin3-wallet.json"
|
||||
import { getOrCreateAssociatedTokenAccount, transfer } from "@solana/spl-token";
|
||||
|
||||
// We're going to import our keypair from the wallet file
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
import {
|
||||
ASSOCIATED_TOKEN_PROGRAM_ID,
|
||||
TOKEN_PROGRAM_ID,
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "../programs/wba_vault";
|
||||
import wallet from "../wba-wallet.json";
|
||||
import wallet from "../turbin3-wallet.json";
|
||||
import {
|
||||
TOKEN_PROGRAM_ID,
|
||||
getOrCreateAssociatedTokenAccount,
|
||||
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
} from "@solana/web3.js";
|
||||
import { Program, Wallet, AnchorProvider, Address } from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
/// J8qKEmQpadFeBuXAVseH8GNrvsyBhMT8MHSVD3enRgJz
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
import {
|
||||
ASSOCIATED_TOKEN_PROGRAM_ID,
|
||||
TOKEN_PROGRAM_ID,
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
BN,
|
||||
} from "@coral-xyz/anchor";
|
||||
import { WbaVault, IDL } from "./programs/wba_vault";
|
||||
import wallet from "./wallet/wba-wallet.json";
|
||||
import wallet from "./wallet/turbin3-wallet.json";
|
||||
|
||||
// Import our keypair from the wallet file
|
||||
const keypair = Keypair.fromSecretKey(new Uint8Array(wallet));
|
||||
|
||||
3437
ts/package-lock.json
generated
3437
ts/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "wba-solana",
|
||||
"name": "turbin3-solana",
|
||||
"version": "1.0.0",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
@@ -16,23 +16,32 @@
|
||||
"spl_metadata": "ts-node ./cluster1/spl_metadata.ts",
|
||||
"nft_image": "ts-node ./cluster1/nft_image.ts",
|
||||
"nft_metadata": "ts-node ./cluster1/nft_metadata.ts",
|
||||
"nft_mint": "ts-node ./cluster1/nft_mint.ts"
|
||||
"nft_mint": "ts-node ./cluster1/nft_mint.ts",
|
||||
"vault_init": "ts-node ./cluster1/vault_init.ts",
|
||||
"vault_deposit": "ts-node ./cluster1/vault_deposit.ts",
|
||||
"vault_withdraw": "ts-node ./cluster1/vault_withdraw.ts",
|
||||
"vault_deposit_spl": "ts-node ./cluster1/vault_deposit_spl.ts",
|
||||
"vault_withdraw_spl": "ts-node ./cluster1/vault_withdraw_spl.ts",
|
||||
"vault_deposit_nft": "ts-node ./cluster1/vault_deposit_nft.ts",
|
||||
"vault_withdraw_nft": "ts-node ./cluster1/vault_withdraw_nft.ts",
|
||||
"vault_close": "ts-node ./cluster1/vault_close.ts"
|
||||
},
|
||||
"dependencies": {
|
||||
"@coral-xyz/anchor": "0.29.0",
|
||||
"@metaplex-foundation/mpl-token-metadata": "3.1.1",
|
||||
"@metaplex-foundation/umi": "^0.8.10",
|
||||
"@metaplex-foundation/umi-bundle-defaults": "^0.8.10",
|
||||
"@metaplex-foundation/umi-uploader-bundlr": "^0.8.10",
|
||||
"@solana/spl-token": "^0.3.9",
|
||||
"@coral-xyz/anchor": "0.31.1",
|
||||
"@metaplex-foundation/mpl-token-metadata": "3.4.0",
|
||||
"@metaplex-foundation/umi": "^1.2.0",
|
||||
"@metaplex-foundation/umi-bundle-defaults": "^1.2.0",
|
||||
"@metaplex-foundation/umi-uploader-irys": "^1.2.0",
|
||||
"@solana/spl-token": "^0.4.13",
|
||||
"@solana/web3.js": "^1.87.6",
|
||||
"@types/node": "^20.9.3",
|
||||
"@types/node": "^24.0.7",
|
||||
"@types/prompt": "^1.1.8",
|
||||
"bs58": "^5.0.0",
|
||||
"bs58": "^6.0.0",
|
||||
"prompt": "^1.3.0",
|
||||
"typescript": "^5.3.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"ts-node": "^10.9.1"
|
||||
}
|
||||
},
|
||||
"main": "index.js"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user