# 🇲🇦 Darija Translator – English to Moroccan Darija REST API
A secure LLM-powered RESTful web service that translates English text into real Moroccan Darija, built with Jakarta EE, JAX-RS, and deployed using Payara Micro.
The system is connected to real client applications, including a PHP web client and a Chrome Extension (Manifest V3).
This project was developed as a Master-level academic project, with a strong focus on REST architecture, security, reusability, and practical usability.
---
## 🎬 Video Demonstration (Start Here)
👉 **Watch the full live demo of the project here:**
**This video demonstrates:**
- the REST API running on Payara Micro
- authentication using Jakarta Security (Basic Auth)
- live API tests with Postman
- the PHP client in action
- the Chrome Extension (side panel, text selection, voice input, and text-to-speech)
⏱️ **Duration:** ~5 minutes
🎯 **Purpose:** Live academic demonstration of the complete system
---
## 📑 Table of Contents
- Features
- Architecture
- Technologies Used
- Project Structure
- Quick Start
- API Documentation
- Client Applications
- Security
- Testing
- Deployment
- Extensions & Future Work
---
## ✨ Features
### Core Features
- ✅ RESTful API implemented with JAX-RS
- ✅ LLM-powered translation (English → Moroccan Darija)
- ✅ HTTP Basic Authentication using Jakarta Security
- ✅ Payara Micro (Jakarta EE embedded server)
- ✅ Health check endpoint
- ✅ Environment-based API key configuration
### Client Applications
- ✅ PHP Web Client using cURL
- ✅ Chrome Extension (Manifest V3) with side panel
- ✅ API testing via Postman, SoapUI, and cURL
- ✅ Secure and authenticated REST communication
### Advanced Capabilities
- ✅ Prompt engineering for high-quality Darija output
- ✅ Voice input (Chrome Extension)
- ✅ Text-to-Speech output (Chrome Extension)
- ✅ Automatic text selection from web pages
---
## 🏗️ Architecture
```
┌──────────────────────────────────────────┐
│ Client Layer │
├──── …