Open Educational Content Sharing Platform for Sierra Leone — SDG 4 | MIT License
# EduShare SL
**EduShare SL** is an open-source Educational Content Sharing Platform for Sierra Leone — a Digital Public Good (DPG) aligned with SDG 4 (Quality Education). Teachers and students can upload, search, and download freely-licensed educational content. The platform works both online and offline (PWA).
---
## Features
- **Content sharing** — Upload PDFs, DOCX, MP4, and images (max 50 MB)
- **Full-text search** — Filter by subject, level, district, and rating
- **Admin moderation** — Review and approve content before publishing
- **Offline support** — PWA with service worker, offline ZIP packages
- **Bilingual** — English and Sierra Leone Krio
- **REST API** — JSON:API-compliant endpoint with CSV/XML export
- **Ratings & reviews** — One rating per user per resource
- **Privacy** — Signed download URLs (5 min expiry), no tracking cookies
- **CC licensing** — All content is openly licensed
## Screenshots
> *(Add screenshots here)*
---
## Tech Stack
| Layer | Technology |
|-------|-----------|
| Backend | Laravel 11, PHP 8.2+ |
| Frontend | Bootstrap 5, Vanilla JS, Blade |
| Database | MySQL 8.0 (SQLite for offline demo) |
| Auth | Laravel Breeze (session-based) |
| Search | Laravel Scout (database driver) |
| Queue | Laravel Queue (database driver) |
| Storage | Laravel Storage (local / S3-compatible) |
| Testing | Pest PHP |
| PWA | Service Worker + Web App Manifest |
---
## Quick Start
### Prerequisites
- PHP 8.2+
- Composer 2+
- Node.js 18+ and npm
- MySQL 8.0 **or** SQLite (for offline demo)
### Installation
```bash
# 1. Clone the repository
git clone
github.com edushare-sl
cd edushare-sl
# 2. Install PHP dependencies
composer install
# 3. Install Node.js dependencies
npm install
# 4. Configure environment
cp .env.example .env
php artisan key:generate
# 5. Configure database in .env, then migrate and seed
php artisan migrate --seed
# 6. Link public storage
php artisan storage:link
# 7. Build …