# π²π¦ 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 β¦