Decentralized Meeting Scheduler is a blockchain-based application designed to facilitate scheduling meetings in a secure, transparent, and tamper-proof manner using smart contracts. This project leverages the power of decentralization to ensure that meeting details are immutable and accessible only by authorized participants.
- Decentralized and Secure: Utilizes blockchain technology to store meeting details securely and ensure immutability.
- Smart Contracts: Automates the scheduling process and enforces meeting rules without the need for intermediaries.
- Transparency: All participants can verify meeting details stored on the blockchain.
- Privacy: Only authorized participants can access the meeting details.
- Solidity: Smart contract development.
- Ethereum: Blockchain platform for deploying smart contracts.
- Web3.js: Interacting with the Ethereum blockchain.
- React: Frontend framework for building the user interface.
- Node.js: Backend server to manage interactions with the blockchain.
- Node.js
- npm
- Truffle
- Ganache (for local blockchain development)
- MetaMask (for browser-based Ethereum wallet)
-
Clone the repository:
git clone https://github.com/yourusername/decentralized-meeting-scheduler.git cd decentralized-meeting-scheduler
-
Install dependencies:
npm install
-
Compile smart contracts:
truffle compile
-
Deploy smart contracts to the local blockchain:
truffle migrate --network development
-
Run the development server:
npm start
-
Connect MetaMask to your local blockchain (e.g., Ganache):
- Open MetaMask.
- Select "Custom RPC" and enter the Ganache RPC server details.
-
Create a new meeting:
- Navigate to the "Create Meeting" page.
- Enter meeting details such as title, date, time, and participants.
- Confirm the transaction in MetaMask to save the meeting details on the blockchain.
-
View scheduled meetings:
- Navigate to the "Scheduled Meetings" page.
- View the list of meetings you are authorized to see.
-
Join a meeting:
- Click on a meeting in the "Scheduled Meetings" list.
- Confirm your participation and access meeting details.
We welcome contributions to the Decentralized Meeting Scheduler project! To contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
. - Make your changes and commit them:
git commit -m 'Add new feature'
. - Push to the branch:
git push origin feature/your-feature-name
. - Submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.