mirror of
https://github.com/placeholder-soft/web.git
synced 2026-05-03 05:04:46 +08:00
Update tutorial content (titles, descriptions) to be consistent (#395)
* Update for tutorial consistency * Add redirects * Add redirects * redirects * Update redirects
This commit is contained in:
@@ -1,201 +1,8 @@
|
||||
{
|
||||
"account-abstraction-with-biconomy": {
|
||||
"title": "Account Abstraction on Base using Biconomy",
|
||||
"slug": "/account-abstraction-with-biconomy",
|
||||
"description": "A guide on implementing Account Abstraction into a Base project using Biconomy paymasters, bundlers, and smart accounts.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Account Abstraction",
|
||||
"AA",
|
||||
"Biconomy",
|
||||
"Paymaster",
|
||||
"Bundler",
|
||||
"User operations",
|
||||
"userops",
|
||||
"Smart contract wallet",
|
||||
"Smart account",
|
||||
"Particle Network",
|
||||
"Particle Auth"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "29 mins"
|
||||
},
|
||||
"account-abstraction-with-privy-and-base-paymaster": {
|
||||
"title": "Account Abstraction: Intro to Privy and the Base Paymaster",
|
||||
"slug": "/account-abstraction-with-privy-and-base-paymaster",
|
||||
"description": "What's in this learning material.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Privy",
|
||||
"viem",
|
||||
"frontend",
|
||||
"smart contract development",
|
||||
"EVM",
|
||||
"Next.js",
|
||||
"Base",
|
||||
"Base network",
|
||||
"account abstraction",
|
||||
"Base paymaster",
|
||||
"embedded wallet"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "46 mins"
|
||||
},
|
||||
"advanced-frame-behavior": {
|
||||
"title": "Advanced Frame Behavior",
|
||||
"slug": "/advanced-frame-behavior",
|
||||
"description": "Make a Farcaster frame that only allows users to access part of the frame after they have completed different actions.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "12 mins"
|
||||
},
|
||||
"build-with-thirdweb": {
|
||||
"title": "Building an App using thirdweb",
|
||||
"slug": "/build-with-thirdweb",
|
||||
"description": "A guide on building an NFT gallery app using thirdweb, including steps for creating an NFT collection, minting NFTs, and configuring the app for the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"thirdweb",
|
||||
"onchain app",
|
||||
"dapp",
|
||||
"NFT",
|
||||
"NFT collection",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"mint NFTs",
|
||||
"web3 wallet",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "8 mins"
|
||||
},
|
||||
"complex-onchain-nfts": {
|
||||
"title": "Complex Onchain NFTs",
|
||||
"slug": "/complex-onchain-nfts",
|
||||
"description": "Learn how to make complex nfts that are procedurally generated and have onchain metadata and images.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"SVG",
|
||||
"generative art",
|
||||
"onchain metadata",
|
||||
"nft metadata",
|
||||
"onchain images",
|
||||
"interfaces",
|
||||
"pseudorandom numbers",
|
||||
"deterministic randomness"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "39 mins"
|
||||
},
|
||||
"cross-chain-with-ccip": {
|
||||
"title": "Sending messages and tokens from Base to other chains using Chainlink CCIP",
|
||||
"slug": "/cross-chain-with-ccip",
|
||||
"description": "A guide on using Chainlink CCIP to perform cross-chain messaging and token transfers from Base Goerli testnet to Optimism Goerli testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Cross-chain",
|
||||
"Omni-chain",
|
||||
"Crosschain",
|
||||
"OmniChain",
|
||||
"Chainlink",
|
||||
"Chainlink CCIP",
|
||||
"CCIP",
|
||||
"cross-chain messaging",
|
||||
"transfer tokens across chains"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "32 mins"
|
||||
},
|
||||
"cross-chain-with-layerzero": {
|
||||
"title": "Sending messages from Base to other chains using LayerZero V2",
|
||||
"slug": "/cross-chain-with-layerzero",
|
||||
"description": "A guide on using LayerZero V2 to perform cross-chain messaging from Base Goerli testnet to Optimism Goerli testnet.",
|
||||
"author": "taycaldwell",
|
||||
"eywords": [
|
||||
"Cross-chain",
|
||||
"Omni-chain",
|
||||
"Crosschain",
|
||||
"OmniChain",
|
||||
"LayerZero",
|
||||
"LayerZero V2",
|
||||
"lz",
|
||||
"cross-chain messaging",
|
||||
"transfer tokens across chains"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "34 mins"
|
||||
},
|
||||
"deploy-frame-on-vercel": {
|
||||
"title": "Deploy Frames on Vercel",
|
||||
"slug": "/deploy-frame-on-vercel",
|
||||
"description": "Learn how to deploy frames using Vercel.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"frames farcaster frames",
|
||||
"Vercel",
|
||||
"OnchainKit",
|
||||
"a frame in 100 lines",
|
||||
"deploy"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "9 mins"
|
||||
},
|
||||
"deploy-smart-contracts": {
|
||||
"title": "Deploying a Smart Contract using Hardhat",
|
||||
"slug": "/deploy-smart-contracts",
|
||||
"description": "A guide on deploying a smart contract on the Base test network using Hardhat. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Hardhat",
|
||||
"smart contract",
|
||||
"ERC-721",
|
||||
"Base",
|
||||
"Base test network",
|
||||
"Base testnet",
|
||||
"Node.js",
|
||||
"Solidity",
|
||||
"smart contract deployment",
|
||||
"deploy a smart contract",
|
||||
"build on base",
|
||||
"write smart contract",
|
||||
"smart contract development"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "15 mins"
|
||||
},
|
||||
"deploy-with-foundry": {
|
||||
"title": "Deploying a Smart Contract using Foundry",
|
||||
"title": "Deploying a smart contract using Foundry",
|
||||
"slug": "/deploy-with-foundry",
|
||||
"description": "A guide on deploying a smart contract on the Base test network using Foundry. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"description": "A tutorial that teaches how to deploy a smart contract on the Base test network using Foundry. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"author": "neodaoist",
|
||||
"keywords": [
|
||||
"Foundry",
|
||||
@@ -213,13 +20,37 @@
|
||||
"smart contract development"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "17 mins"
|
||||
},
|
||||
"deploy-with-hardhat": {
|
||||
"title": "Deploying a smart contract using Hardhat",
|
||||
"slug": "/deploy-with-hardhat",
|
||||
"description": "A tutorial that teaches how to deploy a smart contract on the Base test network using Hardhat. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Hardhat",
|
||||
"smart contract",
|
||||
"ERC-721",
|
||||
"Base",
|
||||
"Base test network",
|
||||
"Base testnet",
|
||||
"Node.js",
|
||||
"Solidity",
|
||||
"smart contract deployment",
|
||||
"deploy a smart contract",
|
||||
"build on base",
|
||||
"write smart contract",
|
||||
"smart contract development"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "15 mins"
|
||||
},
|
||||
"deploy-with-remix": {
|
||||
"title": "Deploying a Smart Contract using Remix",
|
||||
"title": "Deploying a smart contract using Remix",
|
||||
"slug": "/deploy-with-remix",
|
||||
"description": "A guide on deploying a smart contract on the Base test network using Remix IDE. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"description": "A tutorial that teaches how to deploy a smart contract on the Base test network using Remix IDE. Includes instructions for setting up the environment, compiling, and deploying the smart contract.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Remix",
|
||||
@@ -238,13 +69,13 @@
|
||||
"online IDE"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "18 mins"
|
||||
},
|
||||
"deploy-with-tenderly": {
|
||||
"title": "Deploying a Smart Contract using Tenderly",
|
||||
"title": "Deploying a smart contract using Tenderly",
|
||||
"slug": "/deploy-with-tenderly",
|
||||
"description": "A guide on deploying smart contracts using Tenderly DevNets. This page covers setup, debugging, transaction simulations, and continuous integration for smart contract development on Base Network.",
|
||||
"description": "A tutorial that teaches how to deploy smart contracts using Tenderly DevNets. This page covers setup, debugging, transaction simulations, and continuous integration for smart contract development on Base Network.",
|
||||
"author": "tenderly",
|
||||
"keywords": [
|
||||
"Tenderly",
|
||||
@@ -264,13 +95,13 @@
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "19 mins"
|
||||
},
|
||||
"deploy-with-thirdweb": {
|
||||
"title": "Deploying a Smart Contract using thirdweb",
|
||||
"title": "Deploying a smart contract using thirdweb",
|
||||
"slug": "/deploy-with-thirdweb",
|
||||
"description": "A guide on deploying and interacting with smart contracts using the thirdweb CLI and SDK. Includes instructions for project creation, contract deployment on the Base test network.",
|
||||
"description": "A tutorial that teaches how to deploy and interact with smart contracts using the thirdweb CLI and SDK. Includes instructions for project creation, contract deployment on the Base test network.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"thirdweb",
|
||||
@@ -293,31 +124,286 @@
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "10 mins"
|
||||
},
|
||||
"frame-transactions": {
|
||||
"title": "Frame Transactions",
|
||||
"slug": "/frame-transactions",
|
||||
"description": "Invoke a wallet transaction from a Farcaster Frame",
|
||||
"run-a-base-node": {
|
||||
"title": "Running a Base Node",
|
||||
"slug": "/run-a-base-node",
|
||||
"description": "A tutorial that teaches how to set up and run a Base Node.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Base Node setup",
|
||||
"running a node",
|
||||
"Base node",
|
||||
"run a Base node",
|
||||
"hardware requirements",
|
||||
"node synchronization",
|
||||
"node snapshots",
|
||||
"Base chain",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"node deployment",
|
||||
"Ethereum node"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "5 mins"
|
||||
},
|
||||
"build-with-thirdweb": {
|
||||
"title": "Building an onchain app using thirdweb",
|
||||
"slug": "/build-with-thirdweb",
|
||||
"description": "A tutorial that teaches how to build an NFT gallery app using thirdweb, including steps for creating an NFT collection, minting NFTs, and configuring the app for the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"thirdweb",
|
||||
"onchain app",
|
||||
"dapp",
|
||||
"NFT",
|
||||
"NFT collection",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"mint NFTs",
|
||||
"web3 wallet",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "8 mins"
|
||||
},
|
||||
"account-abstraction-with-biconomy": {
|
||||
"title": "Account Abstraction on Base using Biconomy",
|
||||
"slug": "/account-abstraction-with-biconomy",
|
||||
"description": "A tutorial that teaches how to implement Account Abstraction into a Base project using Biconomy paymasters, bundlers, and smart accounts.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Account Abstraction",
|
||||
"AA",
|
||||
"Biconomy",
|
||||
"Paymaster",
|
||||
"Bundler",
|
||||
"User operations",
|
||||
"userops",
|
||||
"Smart contract wallet",
|
||||
"Smart account",
|
||||
"Particle Network",
|
||||
"Particle Auth"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "29 mins"
|
||||
},
|
||||
"account-abstraction-with-privy-and-base-paymaster": {
|
||||
"title": "Account Abstraction on Base using Privy and the Base Paymaster",
|
||||
"slug": "/account-abstraction-with-privy-and-base-paymaster",
|
||||
"description": "A tutorial that teaches how to implement Account Abstraction into a Base project using Privy and the Base paymaster.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Privy",
|
||||
"viem",
|
||||
"frontend",
|
||||
"smart contract development",
|
||||
"EVM",
|
||||
"Next.js",
|
||||
"Base",
|
||||
"Base network",
|
||||
"account abstraction",
|
||||
"Base paymaster",
|
||||
"embedded wallet"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "46 mins"
|
||||
},
|
||||
"cross-chain-with-ccip": {
|
||||
"title": "Sending messages and tokens from Base to other chains using Chainlink CCIP",
|
||||
"slug": "/cross-chain-with-ccip",
|
||||
"description": "A tutorial that teaches how to use Chainlink CCIP to perform cross-chain messaging and token transfers from Base Goerli testnet to Optimism Goerli testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Cross-chain",
|
||||
"Omni-chain",
|
||||
"Crosschain",
|
||||
"OmniChain",
|
||||
"Chainlink",
|
||||
"Chainlink CCIP",
|
||||
"CCIP",
|
||||
"cross-chain messaging",
|
||||
"transfer tokens across chains"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "32 mins"
|
||||
},
|
||||
"cross-chain-with-layerzero": {
|
||||
"title": "Sending messages from Base to other chains using LayerZero V2",
|
||||
"slug": "/cross-chain-with-layerzero",
|
||||
"description": "A tutorial that teaches how to use LayerZero V2 to perform cross-chain messaging from Base Goerli testnet to Optimism Goerli testnet.",
|
||||
"author": "taycaldwell",
|
||||
"eywords": [
|
||||
"Cross-chain",
|
||||
"Omni-chain",
|
||||
"Crosschain",
|
||||
"OmniChain",
|
||||
"LayerZero",
|
||||
"LayerZero V2",
|
||||
"lz",
|
||||
"cross-chain messaging",
|
||||
"transfer tokens across chains"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "34 mins"
|
||||
},
|
||||
"complex-onchain-nfts": {
|
||||
"title": "Building onchain NFTs",
|
||||
"slug": "/complex-onchain-nfts",
|
||||
"description": "A tutorial that teaches how to make complex nfts that are procedurally generated and have onchain metadata and images.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"SVG",
|
||||
"generative art",
|
||||
"onchain metadata",
|
||||
"nft metadata",
|
||||
"onchain images",
|
||||
"interfaces",
|
||||
"pseudorandom numbers",
|
||||
"deterministic randomness"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "39 mins"
|
||||
},
|
||||
"oracles-chainlink-price-feeds": {
|
||||
"title": "Accessing real-world data using Chainlink Data Feeds",
|
||||
"slug": "/oracles-chainlink-price-feeds",
|
||||
"description": "A tutorial that teaches how to use Chainlink Data Feeds to access real-world data, such as asset prices, directly from your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Chainlink",
|
||||
"price feeds",
|
||||
"data feeds",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "11 mins"
|
||||
},
|
||||
"oracles-pyth-price-feeds": {
|
||||
"title": "Accessing real-time asset data using Pyth Price Feeds",
|
||||
"slug": "/oracles-pyth-price-feeds",
|
||||
"description": "A tutorial that teaches how to use Pyth Price Feeds to access real-time asset data, directly from your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Pyth",
|
||||
"Pyth Network",
|
||||
"price feeds",
|
||||
"data feeds",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "13 mins"
|
||||
},
|
||||
"oracles-supra-vrf": {
|
||||
"title": "Generating random numbers contracts using Supra dVRF",
|
||||
"slug": "/oracles-supra-vrf",
|
||||
"description": "A tutorial that teaches how to use Supra dVRF to serve random numbers using an onchain randomness generation mechanism directly within your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Supra",
|
||||
"Supra VRF",
|
||||
"Supra dVRF",
|
||||
"VRF",
|
||||
"verifiable random function",
|
||||
"verifiable random functions",
|
||||
"random numbers",
|
||||
"rng",
|
||||
"random number generator",
|
||||
"random numbers in smart contracts",
|
||||
"random numbers on Base",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "19 mins"
|
||||
},
|
||||
"farcaster-frames-deploy-to-vercel": {
|
||||
"title": "Farcaster Frames: Deploying to Vercel",
|
||||
"slug": "/farcaster-frames-deploy-to-vercel",
|
||||
"description": "A tutorial that teaches how to deploy a Farcaster Frame using Vercel.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"frames farcaster frames",
|
||||
"Vercel",
|
||||
"OnchainKit",
|
||||
"a frame in 100 lines",
|
||||
"deploy"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "9 mins"
|
||||
},
|
||||
"farcaster-frames-gating-and-redirects": {
|
||||
"title": "Farcaster Frames: Gating content and creating redirects",
|
||||
"slug": "/farcaster-frames-gating-and-redirects",
|
||||
"description": "A tutorial that teaches how to create Frames with more advanced behaviors such as gating content based on a user's follows, likes, or recasts, and creating redirect buttons.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames",
|
||||
"wallet",
|
||||
"transaction",
|
||||
"Base"
|
||||
"farcaster frames"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "17 mins"
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "12 mins"
|
||||
},
|
||||
"hyperframes": {
|
||||
"title": "HyperFrames",
|
||||
"slug": "/hyperframes",
|
||||
"description": "Learn how to make cross-linked hyperframes in an organized manner.",
|
||||
"farcaster-frames-hyperframes": {
|
||||
"title": "Farcaster Frames: Building HyperFrames",
|
||||
"slug": "/farcaster-frames-hyperframes",
|
||||
"description": "A tutorial that teaches how to make cross-linked hyperframes in an organized manner.",
|
||||
"author": "briandoyle81",
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
@@ -331,13 +417,153 @@
|
||||
"frame state",
|
||||
"Base"
|
||||
],
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "16 mins"
|
||||
},
|
||||
"farcaster-frames-nft-minting": {
|
||||
"title": "Farcaster Frames: Building an NFT airdrop Frame",
|
||||
"slug": "/farcaster-frames-nft-minting",
|
||||
"description": "A tutorial that teaches how to make a Farcaster Frame that allows you to mint and airdrop NFTs to users.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "22 mins"
|
||||
},
|
||||
"farcaster-frames-nocode-minting": {
|
||||
"title": "Farcaster Frames: Building a no-code minting Frame",
|
||||
"slug": "/farcaster-frames-nocode-minting",
|
||||
"description": "A tutorial that teaches how to make a Farcaster Frame with an outbound link to an NFT minting website.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames",
|
||||
"mint"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "7 mins"
|
||||
},
|
||||
"farcaster-frames-transactions": {
|
||||
"title": "Farcaster Frames: Making transactions",
|
||||
"slug": "/farcaster-frames-transactions",
|
||||
"description": "A tutorial that teaches how to invoke a wallet transaction from a Farcaster Frame.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames",
|
||||
"wallet",
|
||||
"transaction",
|
||||
"Base"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "17 mins"
|
||||
},
|
||||
"hardhat-debugging": {
|
||||
"title": "Hardhat: Debugging smart contracts",
|
||||
"slug": "/hardhat-debugging",
|
||||
"description": "A tutorial that teaches how to debug your smart contracts using Hardhat.",
|
||||
"author": "Brian Doyle",
|
||||
"keywords": [
|
||||
"Hardhat",
|
||||
"smart contract debugging",
|
||||
"debugging logs",
|
||||
"common errors",
|
||||
"error resolution",
|
||||
"decentralized applications"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "15 mins"
|
||||
},
|
||||
"hardhat-profiling-gas": {
|
||||
"title": "Hardhat: Optimizing the gas usage of smart contracts",
|
||||
"slug": "/hardhat-profiling-gas",
|
||||
"description": "A tutorial that teaches how to optimize the gas usage of your smart contracts using Hardhat.",
|
||||
"author": "Brian Doyle",
|
||||
"keywords": [
|
||||
"Hardhat",
|
||||
"gas optimization",
|
||||
"gas usage",
|
||||
"gas profiling",
|
||||
"Hardhat Gas Reporter plugin",
|
||||
"smart contract development",
|
||||
"cost savings",
|
||||
"contract optimization",
|
||||
"gas-efficient contracts"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "16 mins"
|
||||
},
|
||||
"hardhat-profiling-size": {
|
||||
"title": "Hardhat: Optimizing the size of smart contracts",
|
||||
"slug": "/hardhat-profiling-size",
|
||||
"description": "A tutorial that teaches how to optimize the size of your smart contracts using Hardhat.",
|
||||
"author": "Brian Doyle",
|
||||
"keywords": [
|
||||
"Smart Contract Sizes",
|
||||
"Hardhat Contract Sizer",
|
||||
"Base network",
|
||||
"Base blockchain",
|
||||
"Blockchain",
|
||||
"Contract Optimization",
|
||||
"Inheritance",
|
||||
"External Contracts",
|
||||
"Solidity Optimizer",
|
||||
"Smart Contract Development"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "22 mins"
|
||||
},
|
||||
"hardhat-test-coverage": {
|
||||
"title": "Hardhat: Analyzing the test coverage of smart contracts",
|
||||
"slug": "/hardhat-test-coverage",
|
||||
"description": "A tutorial that teaches how to profile the test coverage of your smart contracts using Hardhat and the Solidity Coverage plugin.",
|
||||
"author": "Brian Doyle",
|
||||
"keywords": [
|
||||
"Solidity Coverage",
|
||||
"Smart Contract Testing",
|
||||
"Test Coverage",
|
||||
"Base network",
|
||||
"Base blockchain",
|
||||
"blockchain development",
|
||||
"Hardhat",
|
||||
"Solidity",
|
||||
"Code Testing",
|
||||
"Test Suite Analysis"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "9 mins"
|
||||
},
|
||||
"intro-to-foundry-setup": {
|
||||
"title": "Introduction to Foundry: Setting up Foundry with Base",
|
||||
"title": "Foundry: Setting up Foundry with Base",
|
||||
"slug": "/intro-to-foundry-setup",
|
||||
"description": "Documentation for Foundry, a toolchain for smart contract development. Provides instructions on setting up your development environment to work with Foundry.",
|
||||
"description": "A tutorial that teaches how to set up your development environment to work with Foundry.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Foundry",
|
||||
@@ -348,14 +574,14 @@
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "6 mins"
|
||||
},
|
||||
"intro-to-foundry-testing": {
|
||||
"title": "Introduction to Foundry: Testing smart contracts",
|
||||
"title": "Foundry: Testing smart contracts",
|
||||
"slug": "/intro-to-foundry-testing",
|
||||
"author": "briandoyle81",
|
||||
"description": "Documentation for Foundry, a toolchain for smart contract development. Learn how to test your smart contracts using Foundry.",
|
||||
"description": "A tutorial that teaches how to test your smart contracts using Foundry.",
|
||||
"keywords": [
|
||||
"Foundry",
|
||||
"Forge",
|
||||
@@ -367,13 +593,13 @@
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "9 mins"
|
||||
},
|
||||
"intro-to-providers": {
|
||||
"title": "Introduction to Providers",
|
||||
"slug": "/intro-to-providers",
|
||||
"description": "Learn what providers are and why you need one, and configure several providers and use them to connect to the blockchain.",
|
||||
"description": "A tutorial that teaches what providers are, why you need one, and how to configure several providers and use them to connect to the blockchain.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"blockchain providers",
|
||||
@@ -412,150 +638,7 @@
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"last_updated": "Apr 2",
|
||||
"duration": "20 mins"
|
||||
},
|
||||
"linked-minting-frame": {
|
||||
"title": "Linked Minting Frame",
|
||||
"slug": "/linked-minting-frame",
|
||||
"description": "Make a Farcaster frame with an outbound link to a minting website.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames",
|
||||
"mint"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "7 mins"
|
||||
},
|
||||
"nft-minting-frame": {
|
||||
"title": "Minting an NFT in a Frame",
|
||||
"slug": "/nft-minting-frame",
|
||||
"description": "Make a Farcaster frame that allows users to mint an NFT on your dime.",
|
||||
"author": "briandoyle81",
|
||||
"keywords": [
|
||||
"Solidity",
|
||||
"ERC-721",
|
||||
"token",
|
||||
"NFT",
|
||||
"farcaster",
|
||||
"frames",
|
||||
"farcaster frames"
|
||||
],
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "22 mins"
|
||||
},
|
||||
"run-a-base-node": {
|
||||
"title": "Running a Base Node",
|
||||
"slug": "/run-a-base-node",
|
||||
"description": "A guide for setting up and running a Base Node.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Base Node setup",
|
||||
"running a node",
|
||||
"Base node",
|
||||
"run a Base node",
|
||||
"hardware requirements",
|
||||
"node synchronization",
|
||||
"node snapshots",
|
||||
"Base chain",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"node deployment",
|
||||
"Ethereum node"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "5 mins"
|
||||
},
|
||||
"using-chainlink-price-feeds": {
|
||||
"title": "Accessing real-world data using Chainlink Data Feeds",
|
||||
"slug": "/using-chainlink-price-feeds",
|
||||
"description": "A guide on using Chainlink Data Feeds to access real-world data, such as asset prices, directly from your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Chainlink",
|
||||
"price feeds",
|
||||
"data feeds",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "11 mins"
|
||||
},
|
||||
"using-pyth-price-feeds": {
|
||||
"title": "Accessing real-time asset data using Pyth Price Feeds",
|
||||
"slug": "/using-pyth-price-feeds",
|
||||
"description": "A guide on using Pyth Price Feeds to access real-time asset data, directly from your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Pyth",
|
||||
"Pyth Network",
|
||||
"price feeds",
|
||||
"data feeds",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "13 mins"
|
||||
},
|
||||
"using-supra-vrf": {
|
||||
"title": "Generating random numbers contracts using Supra dVRF",
|
||||
"slug": "/using-supra-vrf",
|
||||
"description": "A guide on using Supra dVRF to serve random numbers using an onchain randomness generation mechanism directly within your smart contracts on the Base testnet.",
|
||||
"author": "taycaldwell",
|
||||
"keywords": [
|
||||
"Oracle Oracles",
|
||||
"Supra",
|
||||
"Supra VRF",
|
||||
"Supra dVRF",
|
||||
"VRF",
|
||||
"verifiable random function",
|
||||
"verifiable random functions",
|
||||
"random numbers",
|
||||
"rng",
|
||||
"random number generator",
|
||||
"random numbers in smart contracts",
|
||||
"random numbers on Base",
|
||||
"smart contract",
|
||||
"Base blockchain",
|
||||
"Base network",
|
||||
"Base testnet",
|
||||
"Base test network",
|
||||
"app development",
|
||||
"dapp development",
|
||||
"build a dapp on Base",
|
||||
"build on Base"
|
||||
],
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Mar 28",
|
||||
"duration": "19 mins"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user