A decentralized application (dApp) built using Ethereum blockchain technology. This project utilizes Truffle for smart contract management, React for the frontend, and Bootstrap for styling.
- Store, retrieve, edit, and delete notes securely on the blockchain.
- Connects to Ethereum wallet (e.g., MetaMask) for account management.
- Responsive and user-friendly interface built with Bootstrap.
Ensure the following are installed on your system:
- Node.js (v16 or above recommended)
- npm or Yarn
- Truffle Suite
- MetaMask browser extension
- Ganache (for local blockchain testing)
- frontend/: Contains the React application for the user interface.
- truffle-setup/: Contains the Truffle project for smart contract development.
-
Navigate to the Truffle Setup Folder
cd truffle-setup
-
Compile Smart Contracts
truffle compile
-
Deploy Smart Contracts
- Start Ganache and note the RPC server URL (usually
http://127.0.0.1:7545
). - Deploy the contracts:
truffle migrate --network development
- Start Ganache and note the RPC server URL (usually
-
Navigate to the Frontend Folder
cd ../frontend
-
Install Dependencies
npm install
-
Update
contractInfo.js
as per your deployed contract[truffle-setup/build/contracts/NotesStorage.json]
.export const CONTRACT_ABI = []; // Your contract ABI here export const CONTRACT_ADDRESS = ""; // Your contract address here
-
Start the Development Server
npm start
- Smart contracts are written in Solidity and located in the
truffle-setup/contracts/
folder. - To test the contracts:
cd truffle-setup truffle test
- Truffle: Development framework for Ethereum.
- React: Frontend JavaScript library.
- Bootstrap: CSS framework for styling.
- Solidity: Smart contract programming language.
- Web3.js: JavaScript library for Ethereum interaction.
- Ganache: Local blockchain for testing.
Feel free to fork the repository and submit pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.