BlockAcademy is a blockchain-based classroom management system designed to facilitate attendance tracking, student management, posting announcements, and managing assignments within a blockchain environment.
- Attendance Tracking: Utilize blockchain technology to securely record and monitor student attendance.
- Student Management: Easily manage enrolled students and their information.
- Announcement Posting: Post announcements, updates, and discussion topics to keep students and instructors informed.
- Assignment Management: Create, distribute, and track assignments efficiently using blockchain.
- Solidity: Smart contract language for Ethereum blockchain development.
- Truffle: Ethereum development framework for testing, deployment, and management of smart contracts.
- Ganache: Personal blockchain for local Ethereum development and testing.
- JavaScript (Node.js and Frontend): Used for backend development, web interface, and interaction with smart contracts.
Follow these steps to set up and run BlockAcademy locally:
- Node.js and npm installed on your machine.
- Truffle installed globally (
npm install -g truffle
).
-
Clone the repository:
git clone https://github.com/your-username/BlockAcademy.git
-
Navigate to the project directory:
cd BlockAcademy
-
Install dependencies:
npm install
-
Compile the smart contracts:
truffle compile
-
Migrate the contracts to your local blockchain (Ganache):
truffle migrate
-
Start the development server:
npm start
-
Access BlockAcademy in your web browser at
http://localhost:3000
.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository on GitHub.
- Create a new branch for your feature or fix.
- Make your changes and commit them with descriptive messages.
- Push your changes to your fork.
- Submit a pull request to the main repository.
This isn't the final version it has many things hardcoded.
This project is licensed under the MIT License. See the LICENSE file for details.