Edu_Bond is an innovative e-learning platform that democratizes education by providing free access to high-quality courses and learning materials. Unlike traditional platforms that offer pre-existing courses, Edu_Bond focuses on peer-to-peer learning, enabling students to connect with friends online, share knowledge, and collaborate on learning materials. Additionally, Edu_Bond ensures secure access through email verification via OTP during the login process.
- Peer-to-Peer Learning: Connect with friends and share learning materials directly.
- Free Access: All learning materials and courses are available at no cost.
- File Sharing: Easily share files, notes, and links with your friends.
- Chat Functionality: Communicate and collaborate in real-time with your learning partners.
- Email Verification: Secure login process with OTP-based email verification.
- React.js: A JavaScript library for building user interfaces.
- Redux: A state management library for managing application state.
- Material-UI: A popular React UI framework for building beautiful interfaces.
- Socket.io: For real-time communication and chat functionality.
- Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine.
- Express.js: A minimal and flexible Node.js web application framework.
- Sequelize: An ORM (Object-Relational Mapping) for Node.js to interact with the database.
- JWT (JSON Web Tokens): For secure authentication and authorization.
- PostgreSQL: An open-source relational database management system.
- Docker: For containerization and consistent development environments.
- GitHub Actions: For continuous integration and deployment (CI/CD).
- Node.js: Ensure you have Node.js installed. You can download it from Node.js.
- Git: Ensure you have Git installed. You can download it from Git.
- PostgreSQL: Ensure you have PostgreSQL installed and running.
- Docker: Ensure you have Docker installed. You can download it from Docker.
-
Open your terminal or command prompt.
-
Clone the repository using the following command:
git clone https://github.com/ManoharAI/Edu_Bond.git
-
Navigate to the project directory:
cd Edu_Bond
-
Install Dependencies:
-
Navigate to the project directory if you haven't already.
-
Install the required dependencies using npm:
npm install
-
-
Environment Configuration:
-
Create a
.envfile in the root directory of the project. -
Add the necessary environment variables. Here is an example:
PORT=3000 DB_HOST=localhost DB_USER=root DB_PASSWORD=yourpassword DB_NAME=edubond JWT_SECRET=your_jwt_secret EMAIL_SERVICE=your_email_service EMAIL_USER=your_email_user EMAIL_PASS=your_email_password
-
-
Database Setup:
-
Ensure your PostgreSQL database is running.
-
Run the database migrations to set up the necessary tables:
npm run migrate
-
-
Start the Development Server:
-
Run the following command to start the development server:
npm start
-
The server will start on the port specified in your
.envfile (default is3000).
-
-
Access the Application:
- Open your web browser and navigate to
http://localhost:3000to access the application.
- Open your web browser and navigate to
Edu_Bond is a team project, and we welcome contributions from developers, educators, and learners alike. If you are interested in contributing to the project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or fix.
- Make your changes and commit them.
- Open a pull request and describe your changes.
For any questions or feedback, feel free to reach out to us at contact@edubond.com.
This project is licensed under the MIT License - see the LICENSE file for details.
Thank you for your interest in Edu_Bond. Together, we can make education accessible to everyone, everywhere.