# 🇲🇦 Darija Translate
> A modern browser extension for translating English to Moroccan Darija (Moroccan Arabic Dialect) with AI-powered translation and user authentication.
## ✨ Features
- 🌍 **Instant Translation** - Translate selected text from English to Moroccan Darija
- 🎯 **Context Menu Integration** - Right-click to translate any selected text
- 🔐 **User Authentication** - Secure email-based registration and login
- 📧 **Email Notifications** - Welcome emails, verification, and password reset
- 📝 **Translation History** - Keep track of your previous translations
- 🎨 **Modern UI** - Beautiful interface with Moroccan-inspired design (Red/Green theme)
- 💾 **Offline Storage** - SQLite database for user data and history
- 🚀 **Fast & Lightweight** - Optimized performance with minimal resource usage
## 🛠️ Tech Stack
### Frontend (Extension)
- **Manifest V3** - Latest Chrome Extension API
- **Vanilla JavaScript** - No framework dependencies
- **Modern CSS** - Glassmorphism effects and smooth animations
### Backend
- **Node.js** - Runtime environment
- **Express.js** - Web framework
- **SQLite3** - Database
- **JWT** - Authentication tokens
- **Nodemailer** - Email service
- **bcryptjs** - Password hashing
## 📋 Prerequisites
- Node.js (v14 or higher)
- npm or yarn
- Chrome, Edge, or any Chromium-based browser
- SMTP email account (for email notifications)
## 🚀 Installation
### 1. Clone the Repository
```bash
git clone
github.com
cd darija-translate
```
### 2. Backend Setup
```bash
cd backend
npm install
```
### 3. Environment Configuration
Create a `.env` file in the `backend` directory:
```env
PORT=3000
JWT_SECRET=your_jwt_secret_key_here
EMAIL_USER=your_email@gmail.com
EMAIL_PASS=your_app_password
EMAIL_FROM=Darija Translator
```
> **Note:** For Gmail, you need to use an App Password
### 4. Start the Backend Server
```bash
npm start
```
The server will start on `
localhost`
### 5. Load the Ex …