Learning Management System for African Children - Bridging the Digital Divide
# TechBridge Learning Management System
> A comprehensive learning management system designed to bridge the digital divide for underprivileged African children (aged 8-18).
## 📋 Quick Start Guide
### Prerequisites
- **Node.js** (v18.0.0 or higher) - Download here
- **MongoDB** (v5.0 or higher) - Install guide
- **Git** - Download here
### Installation & Setup
**Step 1: Clone Repository**
```bash
git clone
github.com
cd techbridge
```
**Step 2: Install Dependencies**
```bash
# Backend dependencies
cd server
npm install
# Frontend dependencies
cd ../client
npm install
```
**Step 3: Configure Environment**
Create `.env` file in `server` directory:
```env
MONGODB_URI=mongodb://localhost:27017/techbridge
JWT_SECRET=your-super-secure-secret-key
PORT=5000
NODE_ENV=development
CORS_ORIGIN=
localhost
```
**Step 4: Start MongoDB**
```bash
# Windows
net start MongoDB
# macOS/Linux
brew services start mongodb/brew/mongodb-community
# or
sudo systemctl start mongod
```
**Step 5: Seed Database**
```bash
cd server
node seed.js
```
**Step 6: Start Application**
```bash
# Terminal 1 - Backend (from server directory)
npm start
# Terminal 2 - Frontend (from client directory)
cd ../client
npm start
```
**Step 7: Access Application**
- Frontend:
localhost
- Backend API:
localhost
### Demo Accounts
- **Teacher:** teacher@techbridge.com / Teacher123!
- **Student:** Register new account or use existing credentials
## 🌟 Features
### Core Learning Features
- **Interactive Courses**: Video, text, and interactive content
- **Quiz System**: Multiple question types with automated grading (3 attempts max, 24hr cooldown)
- **Assignment System**: Due dates with late penalties (10% per day, max 7 days)
- **Progress Tracking**: Real-time monitoring with grading formula (40% quizzes + 40% assignments + 20% participation)
- * …