Web 3 Octo 🐙
Built with Next Js, Hardhat, Solidity, Arweave, Bundlr, The Graph Protocol and Tailwind CSS.
Functionalities
- Publish Blog
- Update Blog
- Search Blogs
- Related Blogs
Stack
- Frontend : Next Js
- Smart Contract Lang : Solidity
- Indexing : The Graph
- Dev Environment for ETH Software: Hardhat
- Testing: Chai
- File Storage : Arweave
- Scaling Permenant Storage - Bundlr.network
- Network : Polygon
- Style : Tailwind CSS
- State management : GraphQL Apollo Client
- Toast: React Toastify
- Fonts - Google Fonts
- Editor: React SimpleMDE Markdown Editor
- Markdown Preview - React Markdown
- Icons : Iconsax React
Installation
Fork The Repo
Click on the Right Side of the Top Bar to After the Watch button.
Now It will be available in GitHub Account.
OR
Clone
- Clone this repo with url
git clone https://github.com/Aakrut/web3-octo
Setup
Install npm dependencies using npm install
cd web3-octo && 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_RPC_URL="POLYGON_TESTNET_URI"
NEXT_PUBLIC_CONTRACT_ADDRESS="CONTRACT_ADDRESS"
NEXT_PUBLIC_GRAPHQL_URL="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"
The Graph
For Setting up Graph Protocol -now replace the graph url with
NEXT_PUBLIC_GRAPHQL_URL="GRAPHQL_URL"
Let's Run this command for dev
npm run dev
--or--
yarn dev