Skip to content

The Ed-Tech Platform is a modern educational technology solution designed to support various learning models including online, hybrid, and traditional classroom settings. It provides features for course management, interactive learning, and administrative oversight.

Notifications You must be signed in to change notification settings

abdullahsadik00/Ed-Tech-Platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ed-Tech Platform

Project Overview

The Ed-Tech Platform is a modern educational technology solution designed to support various learning models including online, hybrid, and traditional classroom settings. It provides features for course management, interactive learning, and administrative oversight.

Key Features

  • User Authentication: Secure login, registration, and profile management.

  • Course Management: Tools for creating, managing, and enrolling in courses with comprehensive content and assessments.

  • Interactive Learning: Modules for assignments, quizzes, discussions, and multimedia content.

  • Administrative Tools: Dashboards and reporting tools for managing users, courses, and performance analytics.

  • Communication: Messaging system and notifications to facilitate interaction between users.

Technologies Used

  • Frontend: React, Redux, HTML, CSS

  • Backend: Node.js, Express.js

  • Database: MongoDB

  • Authentication: JWT (JSON Web Tokens)

  • Deployment: Docker, Kubernetes (optional), AWS or other cloud services

File Structure

Root Directory

  • README.md: This file.

  • LICENSE: License file for the project.

  • docker-compose.yml: Docker Compose configuration file (if using Docker).

  • frontend/: Frontend source code directory.

  • backend/: Backend source code directory.

Frontend Directory (frontend/)

  • src/: Source code for the frontend application.

  • components/: Reusable React components.

  • pages/: Page-level components.

  • redux/: Redux actions, reducers, and store configuration.

  • services/: API service calls.

  • App.js: Main application component.

  • index.js: Entry point for the React application.

  • public/: Public assets (e.g., index.html).

  • package.json: Frontend dependencies and scripts.

  • .env: Environment variables for the frontend.

Backend Directory (backend/)

  • src/: Source code for the backend application.

  • controllers/: Request handlers for API routes.

  • models/: Mongoose models for MongoDB schemas.

  • routes/: API route definitions.

  • middleware/: Middleware functions (e.g., authentication).

  • config/: Configuration files (e.g., environment variables).

  • server.js: Main entry point for the backend server.

  • package.json: Backend dependencies and scripts.

  • .env: Environment variables for the backend.

Setup Instructions

Prerequisites

Ensure you have the following installed:

  • Node.js (v14 or later)

  • MongoDB (or a MongoDB cloud service)

  • Docker (optional for containerization)

Clone the Repository

Clone the repository from GitHub:

git  clone  https://github.com/abdullahsadik00/ed-tech-platform.git

cd  ed-tech-platform

Setup Backend

1. Navigate to the backend directory

cd backend

2. Install dependencies

npm install

3. Create a .env file in the backend directory and add the following environment variables

MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
PORT=5000

4. Start the backend server

npm start

Setup Frontend

1. Navigate to the frontend directory

cd ../frontend

2. Install dependencies

npm install

3. Create a .env file in the frontend directory and add the following environment variables

REACT_APP_API_URL=http://localhost:5000

4. Start the frontend server

npm start

Docker Setup (Optional)

1. Build Docker images

docker-compose build

2. Start the application with Docker

docker-compose up

Running Tests

1. Navigate to the backend directory and run tests

cd backend
npm test
  1. Navigate to the frontend directory and run tests:
cd ../frontend
npm test

Contributing

We welcome contributions to the project! To contribute:

Fork the repository.

Create a new branch (git checkout -b feature-branch).

Make your changes.

Commit your changes (git commit -am 'Add new feature').

Push to the branch (git push origin feature-branch).

Create a new Pull Request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For questions or support, please contact: Email: sadikshaikh3012@gmail.com

GitHub Issues: GitHub Issues

Acknowledgments

Special thanks to the contributors and supporters of this project. Inspiration and resources from the open-source community.

This `README.md` file provides a comprehensive overview of the project, setup instructions, and additional information necessary for understanding and contributing to the project. Adjust the specific details (e.g., repository URL, contact information) as needed.

About

The Ed-Tech Platform is a modern educational technology solution designed to support various learning models including online, hybrid, and traditional classroom settings. It provides features for course management, interactive learning, and administrative oversight.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published