Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jerga99/nft-marketplace-template
NFT Marketplace on Ethereum Blockchain based on course. Made in React/Next JS, Solidity and Typescript.
https://github.com/jerga99/nft-marketplace-template
javascript nextjs pinata reactjs solidity-language truffle typescript
Last synced: about 1 month ago
JSON representation
NFT Marketplace on Ethereum Blockchain based on course. Made in React/Next JS, Solidity and Typescript.
- Host: GitHub
- URL: https://github.com/jerga99/nft-marketplace-template
- Owner: Jerga99
- Created: 2022-04-28T10:52:42.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-05-03T21:44:20.000Z (over 2 years ago)
- Last Synced: 2024-10-13T01:20:13.890Z (about 1 month ago)
- Topics: javascript, nextjs, pinata, reactjs, solidity-language, truffle, typescript
- Language: TypeScript
- Homepage: https://academy.eincode.com/courses/nft-marketplace-in-react-js-next-typescript-full-guide
- Size: 791 KB
- Stars: 25
- Watchers: 2
- Forks: 15
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This is a [Next.js](https://nextjs.org/) project. Full process and video lectures how to create the application can be found here: [NFT Marketplace in React, Typescript & Solidity - Full Guide
](https://academy.eincode.com/courses/nft-marketplace-in-react-js-next-typescript-full-guide)## Overview
Marketplace has dependencies on multiple technologies.
* [Pinata](https://app.pinata.cloud/) - store images, and NFT metadata
* [Ganache](https://trufflesuite.com/ganache/) - private Blockchain, to run application localy## To run the app
1. run `npm install` to install dependencies2. In the root folder of the application create a `.env.development` file with following content:
```
NEXT_PUBLIC_NETWORK_ID=5777
NEXT_PUBLIC_TARGET_CHAIN_ID=1337
NEXT_PUBLIC_PINATA_DOMAIN=https://gateway.pinata.cloudSECRET_COOKIE_PASSWORD={your custom at least 32 characters long password!}
PINATA_API_KEY={your api key from pinata}
PINATA_SECRET_API_KEY={your api secret key from pinata}
```
* (your api pinata key has to allow `pinFileToIPFS` and `pinJSONToIPFS` rules)3. Then migrate a contract to Ganache, contract can be found in the `contracts` folder. It's called `NftMarket.sol`
* To migrate the contract run `truffle migrate` in the terminal while Ganache network is setup and running.
* Do not forget to link `trufle-config.js` with Ganache, just go to `config` and click `Add Project`
* `keys.json` must be created if you want to deploy to Ropsten, if not, just remove import of `keys.json` from `trufle-config.js` and also comment out `ropsten` configuration
4. Now everything is setup and you can test out the app.
* Run `npm run dev` in the terminal. App will run at `localhost:3000`