Added NFT challenges
This commit is contained in:
25
ts/cluster1/nft_image.ts
Normal file
25
ts/cluster1/nft_image.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
import wallet from "../wba-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"
|
||||
|
||||
// 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(signerIdentity(signer));
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
// const image = ???
|
||||
|
||||
// const [myUri] = ???
|
||||
// console.log("Your image URI: ", myUri);
|
||||
}
|
||||
catch(error) {
|
||||
console.log("Oops.. Something went wrong", error);
|
||||
}
|
||||
})();
|
||||
42
ts/cluster1/nft_metadata.ts
Normal file
42
ts/cluster1/nft_metadata.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
import wallet from "../wba-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"
|
||||
|
||||
// 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(signerIdentity(signer));
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
// const image = ???
|
||||
const metadata = {
|
||||
name: "?",
|
||||
symbol: "?",
|
||||
description: "?",
|
||||
image: "?",
|
||||
attributes: [
|
||||
{trait_type: '?', value: '?'}
|
||||
],
|
||||
properties: {
|
||||
files: [
|
||||
{
|
||||
type: "image/png",
|
||||
uri: "?"
|
||||
},
|
||||
]
|
||||
},
|
||||
creators: []
|
||||
};
|
||||
// const myUri = ???
|
||||
// console.log("Your image URI: ", myUri);
|
||||
}
|
||||
catch(error) {
|
||||
console.log("Oops.. Something went wrong", error);
|
||||
}
|
||||
})();
|
||||
26
ts/cluster1/nft_mint.ts
Normal file
26
ts/cluster1/nft_mint.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
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 base58 from "bs58";
|
||||
|
||||
const RPC_ENDPOINT = "https://api.devnet.solana.com";
|
||||
const umi = createUmi(RPC_ENDPOINT);
|
||||
|
||||
let keypair = umi.eddsa.createKeypairFromSecretKey(new Uint8Array(wallet));
|
||||
const myKeypairSigner = createSignerFromKeypair(umi, keypair);
|
||||
umi.use(signerIdentity(myKeypairSigner));
|
||||
umi.use(mplTokenMetadata())
|
||||
|
||||
const mint = generateSigner(umi);
|
||||
|
||||
(async () => {
|
||||
// let tx = ???
|
||||
// let result = await tx.sendAndConfirm(umi);
|
||||
// const signature = base58.encode(result.signature);
|
||||
|
||||
// console.log(`Succesfully Minted! Check out your TX here:\nhttps://explorer.solana.com/tx/${signature}?cluster=devnet`)
|
||||
|
||||
console.log("Mint Address: ", mint.publicKey);
|
||||
})();
|
||||
@@ -13,13 +13,17 @@
|
||||
"spl_init": "ts-node ./cluster1/spl_init.ts",
|
||||
"spl_mint": "ts-node ./cluster1/spl_mint.ts",
|
||||
"spl_transfer": "ts-node ./cluster1/spl_transfer.ts",
|
||||
"spl_metadata": "ts-node ./cluster1/spl_metadata.ts"
|
||||
"spl_metadata": "ts-node ./cluster1/spl_metadata.ts",
|
||||
"nft_image": "ts-node ./block1/nft_image.ts",
|
||||
"nft_metadata": "ts-node ./block1/nft_metadata.ts",
|
||||
"nft_mint": "ts-node ./block1/nft_mint.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",
|
||||
"@solana/web3.js": "^1.87.6",
|
||||
"@types/node": "^20.9.3",
|
||||
|
||||
Reference in New Issue
Block a user