This repository showcases our project iHive developed during our internship at Kerala-Blockchain-Academy. iHive is a blockchain-based platform designed for decentralized idea storage and management. Built on the Ethereum blockchain, it ensures transparency and security while fostering innovation. This README provides comprehensive instructions to help you set up, and run the iHive project seamlessly.
iHive allows users to:
- Submit and securely store ideas on the blockchain.
- Avoid duplication by checking existing entries in a decentralized ledger.
- Leverage MetaMask for user authentication and payment processing.
Before proceeding, ensure you have the following installed on your system:
- Node.js (Latest LTS version recommended)
Download from Node.js Official Website. - npm (Comes bundled with Node.js)
- MetaMask (Installed as a browser extension)
Install from MetaMask Official Website and add the Holesky test network to the MetaMask. - Hardhat (For Ethereum smart contract development and deployment)
In this project, we have utilised pinata website to store data in the IPFS. To ensure the data is stored in the IPFS, you need to create an account in the Pinata Website and create a private key. Store the details of the api key safely.
Follow these steps to set up and deploy the iHive project:
-
Clone the Repository
git clone [repository-link] cd [repository-folder]
-
Install backend dependencies
npm install
-
Install frontend
cd frontend npm install
-
Create a .env file to store the details of pinata website
Store the gateway id and JWT key of api key in the given format.
VITE_PINATA_JWT=<JWT_key> VITE_GATEWAY_URL=<gateway_id>
-
Run the Frontend
npm run dev
-
npm install
Installs necessary dependencies mentioned in the package.json file. -
npm run dev
Starts the development server for the frontend.