Files
Ionel Andrei Cataon f0b4466a76 s
2026-02-18 18:31:01 +02:00
..
s
2026-02-18 18:21:25 +02:00
s
2026-02-18 15:44:19 +02:00
p
2026-02-18 15:36:30 +02:00
s
2026-02-18 15:44:19 +02:00
s
2026-02-18 18:31:01 +02:00

# ⚡ NutriAI Elite - Sistem Inteligent de Nutriție

NutriAI Elite este o aplicație web avansată care combină calculul biometric precis cu puterea inteligenței artificiale (Groq API) pentru a genera planuri alimentare personalizate și verificate matematic.

---

## 🏗️ Arhitectura Pipeline-ului (Highlights)

Proiectul folosește un flux modern de tip **CI/CD** (Continuous Integration / Continuous Deployment) pentru a asigura stabilitatea și ușurința în scalare.

### 1. Front-end & Logică (HTML/JS)
* **Core:** Calculează necesarul caloric folosind formula **Mifflin-St Jeor**.
* **UI:** Interfață adaptivă cu suport pentru unități Metrice/Imperiale și sistem de teme (Onyx, Emerald, Midnight, Titanium).
* **API Integration:** Comunică direct cu modelul Llama 3.3 via Groq pentru generarea dietelor.

### 2. Managementul Dependențelor (Maven - `pom.xml`)
* Gestionează toate librăriile externe necesare.
* Compilează codul sursă și rulează testele unitare.
* Ambalează aplicația într-un format executabil pregătit pentru containerizare.

### 3. Containerizare (Dockerfile)
* Izolează aplicația într-un container **Docker**.
* Garantează că aplicația rulează identic în orice mediu (Local, Testing, Producție).
* Reduce conflictele de versiuni între biblioteci.



### 4. Automatizare (Jenkins - CI/CD)
* **Orchestrare:** Jenkins monitorizează repository-ul de Git.
* **Flux:** La fiecare *push*, Jenkins execută automat: 
    `Maven Build` ➔ `Docker Build Image` ➔ `Push to Registry` ➔ `Deploy on Server`.



---

## 🧬 Logica de Verificare AI (Groq Patch)

Pentru a elimina erorile clasice ale modelelor LLM, pipeline-ul include un **Prompt de Sistem** strict care impune:
* **Truth Table:** Valori calorice fixe pentru ingrediente brute (ex: 100g Orez = 360 kcal).
* **Scaling Dinamic:** Ajustarea gramajelor reale pentru a atinge ținta calorică, în loc de inventarea unor valori false.
* **Diversitate:** Autorizarea utilizării de proteine diverse (Steak, Somon, Avocado) pentru a evita monotonia.

---

## 🚀 Cum se rulează proiectul

1.  **Local:** Deschide `index.html` într-un browser modern.
2.  **Docker:**
    ```bash
    docker build -t nutriai-elite .
    docker run -p 8080:80 nutriai-elite
    ```
3.  **Jenkins:** Adaugă URL-ul repository-ului în Jenkins și configurează `Jenkinsfile`-ul pentru automatizare completă.

---
*Creat și optimizat pentru performanță nutrițională și rigoare matematică.*