NFT Marketplace Built With Polygon, Solidity, IPFS & Next.js
Objective
Create NFT Marketplace With Below Options.
- Home
- Sell Digital Asset
- My Digital Assets
- Creator Dashboad
Run this project
How to setup locally?
To run this project locally, follow these steps.
1. Clone the project locally, change into the directory, and install the dependencies:
git clone https://github.com/TravelXML/POLYGON-NFT-MARKETPLACE.git
cd POLYGON-NFT-MARKETPLACE
# install using NPM or Yarn
npm install
# or
yarn
2. Start the local Hardhat node
npx hardhat node
3. With the network running, deploy the contracts to the local network in a separate terminal window
npx hardhat run scripts/deploy.js --network localhost
4. Start the app
npm run dev
Navigate http://localhost:3000 on the browser you can see your marketplace is up.
Click on Sell Digital Asset
Click on Home
Configuration
To deploy to Polygon test or main networks, update the configurations located in hardhat.config.js to use a private key and, optionally, deploy to a private RPC like Infura.
require("@nomiclabs/hardhat-waffle");
const fs = require('fs');
const privateKey = fs.readFileSync(".secret").toString().trim() || "01234567890123456789";
const infuraId = fs.readFileSync(".infuraid").toString().trim() || "";
module.exports = {
defaultNetwork: "hardhat",
networks: {
hardhat: {
chainId: 1337
},
/*
mumbai: {
// Infura
url: `https://polygon-mumbai.infura.io/v3/${infuraId}`
//url: "https://rpc-mumbai.matic.today",
accounts: [privateKey]
},
matic: {
// Infura
url: `https://polygon-mainnet.infura.io/v3/${infuraId}`,
//url: "https://rpc-mainnet.maticvigil.com",
accounts: [privateKey]
}
*/
},
solidity: {
version: "0.8.4",
settings: {
optimizer: {
enabled: true,
runs: 200
}
}
}
};
If using Infura, update .infuraid with your Infura project ID.
Show some ♥️