Here’s the README in proper markdown format:
Crypto Gratitude Journal is a decentralized application (dApp) where users can write and store daily gratitude notes on the blockchain. The platform tracks users' gratitude streaks and allows them to view their past entries. Users can also mint their best entries as NFTs to preserve special moments of gratitude forever.
- Daily Gratitude Submission: Users can submit a daily gratitude note that is stored on the Scroll chain.
- Gratitude Streak: Users' daily entries are tracked, and a streak is displayed to encourage consistency.
- View Past Entries: Users can see their previous gratitude notes, with details like submission date.
- NFT Minting: Users can mint their best entries as NFTs and store them in their wallets.
- Frontend: ReactJS, TypeScript, TailwindCSS
- Blockchain: Solidity, Scroll
- Wallet Interaction: Ethers.js, Web3Modal
- Alchemy RPC: Used to connect and interact with the Scroll chain.
- Node.js and npm installed on your machine.
- A wallet like MetaMask to connect to the dApp.
- Alchemy API key for Scroll RPC.
-
Clone the repository:
git clone https://github.com/Akanimorex/Crypto-Gratitude-Journal.git cd crypto-gratitude-journal
-
Install dependencies:
npm install
-
Set up environment variables:
Create a
.env
file in the root of the project and add your Alchemy API key.REACT_APP_ALCHEMY_API_URL=https://scroll.alchemyapi.io/v2/your-api-key
-
Deploy the Solidity smart contract to the Scroll testnet using Hardhat, Remix, or your preferred tool.
-
Replace the contract address in
src/App.tsx
:const CONTRACT_ADDRESS = 'YOUR_DEPLOYED_CONTRACT_ADDRESS';
-
Ensure you have the correct Alchemy RPC URL for Scroll configured in your smart contract deployment configuration (such as
hardhat.config.js
).
-
Start the development server:
npm start
-
Open the dApp in your browser:
http://localhost:3000
-
Connect your MetaMask wallet and start writing gratitude notes!
- [Insert a link to the project demo video]
This project is licensed under the MIT License. See the LICENSE file for details.
This version is structured and formatted correctly for a README file, suitable for your project repository on GitHub.