- Upload Song
- Search Songs
- Song Details
- Play Song
- Language : JavaScript
- Frontend : Next Js
- Smart Contract Lang : Solidity
- Indexing : The Graph
- Dev Environment for ETH Software: Hardhat
- Testing: Chaijs
- File Storage : Arweave
- Scaling Permenant Storage - Bundlr
- Network : Polygon Mumbai
- Style : Tailwind CSS
- State management : GraphQL Apollo Client
- Toast: React Toastify
- Fonts - Google Fonts
- Icons : Iconsax React
- Design : Figma
Click on the Right Side of the Top Bar to After the Watch button.
Now It will be available in GitHub Account.
- Clone this repo with url
git clone https://github.com/Aakrut/musicen
Install npm dependencies using npm install
cd musicen && npm install
Set up environment Variables I already Provided .env.example file.
Create a .env file in the root directory.
Set up required environment variables.
URL="POLYGON_TESTNET_URI"
PRIVATE_KEY="METAMASK_PRIVATE_KEY"
NEXT_PUBLIC_CONTRACT_ADDRESS="CONTRACT_ADDRESS"
NEXT_PUBLIC_GRAPHQL_URI="GRAPHQL_URL"
In the Root Directory First Compile Your Smart Contract with This Following Command.
npx hardhat compile
After Deploy Smart Contract to the Polygon Mumbai Testnet with this command.
npx hardhat run scripts/deploy.js --network mumbai
Copy Smart Contract Address and replace it in with your "CONTRACT_ADDRESS"
NEXT_PUBLIC_CONTRACT_ADDRESS="CONTRACT_ADDRESS"
For Setting up Graph Protocol - The Graph
now replace the graph url with
NEXT_PUBLIC_GRAPHQL_URI="GRAPHQL_URL"
Let's Run this command for dev
npm run dev
--or--
yarn dev