Translator fron English to Darija
# English To Darija Translator
This project provides a solution for translating English text to Darija, featuring a web-based application, a browser extension, and a backend API.
## Presentation video
## Features
* **Web Application:** A user-friendly interface for text translation, user authentication (login/signup), and user settings.
* **Browser Extension:** Translate content while browsing the web directly from the browser.
* **Backend API:** A Node.js-based API handling all translation requests, user management, and database interactions.
* **Authentication & Authorization:** Secure user login and registration with session management.
* **Database Integration:** Stores user information, translation history, and other application data.
* **External Translation Service Integration:** Utilizes a third-party translation API for Darija translations.
## Architecture
The application is composed of three main parts:
1. **Frontend:** A client-side web application built with HTML, CSS, and JavaScript, providing the main user interface. It communicates with the backend API for all dynamic content and functionalities.
2. **Backend:** A Node.js/Express.js API server that acts as the central hub. It processes requests from the frontend and browser extension, interacts with the database, and orchestrates calls to the external translation service.
3. **Browser Extension:** A lightweight browser extension (HTML, CSS, JavaScript) that allows users to interact with the translation service directly from their browser, leveraging the same backend API.
The backend further integrates with a dedicated `Translator` module that communicates with an `External Translation API` and stores data in a MongoDB NoSQL database.
## Technologies Used
* **Frontend:** HTML, CSS, JavaScript
* **Backend:** Node.js, Express.js
* **Database:** NoSQL (MongoDB)
* **Browser Extension:** HTML, CSS, JavaScript
## Setup and Installation
Follow these steps to get the Darija …