Files
Traduttore/README.md
2026-03-06 19:26:36 +01:00

297 lines
7.0 KiB
Markdown

# Traduttore AI 🌍
Un'applicazione desktop elegante e moderna per tradurre testi dall'inglese all'italiano e viceversa utilizzando modelli AI locali tramite Ollama. L'app rileva automaticamente la lingua del testo inserito e fornisce la traduzione istantanea.
![Screenshot](screenshot.png)
## ✨ Caratteristiche
- 🎨 **Design moderno** con gradienti colorati e interfaccia intuitiva
- 🔄 **Rilevamento automatico** della lingua (inglese/italiano)
- 🤖 **Integrazione con Ollama** per traduzioni locali e private
-**Traduzione istantanea** con un solo click
- 📋 **Menu contestuale** con Copia/Incolla (tasto destro)
- ⚙️ **Configurazione flessibile** di modello e URL Ollama
- 🖥️ **Multi-piattaforma** (Linux e Windows)
- 🎯 **Rilevamento automatico** direzione traduzione (EN→IT o IT→EN)
## 📋 Requisiti
- **Node.js** v18 o superiore
- **npm** o **yarn**
- **Ollama** installato e in esecuzione
- Almeno un modello LLM scaricato in Ollama (consigliati: llama3, mistral, qwen3:8b)
## 🚀 Installazione
### 1. Clona il repository
```bash
git clone https://github.com/tuousername/traduttore-ai.git
cd Traduttore
```
### 2. Installa le dipendenze
```bash
npm install
```
### 3. Installa Ollama
#### Linux
```bash
# Installazione automatica
curl -fsSL https://ollama.com/install.sh | sh
# Oppure scarica manualmente da:
# https://ollama.com/download
```
#### Windows
1. Scarica l'installer da: https://ollama.com/download/windows
2. Esegui il file `.exe` e segui la procedura guidata
3. Ollama si avvierà automaticamente
### 4. Scarica un modello
```bash
# Modello consigliato (buon bilanciamento qualità/velocità)
ollama pull llama3
# Oppure per traduzioni più accurate
ollama pull qwen3:8b
# Per computer meno potenti
ollama pull mistral
```
### 5. Verifica che Ollama sia in esecuzione
```bash
# Linux - controlla se il servizio è attivo
systemctl status ollama
# Oppure prova a fare una richiesta
curl http://localhost:11434/api/tags
```
## 💻 Utilizzo
### Modalità Sviluppo
Per avviare l'applicazione in modalità sviluppo con hot-reload:
```bash
npm start
```
### Build per Distribuzione
#### Linux (AppImage)
```bash
npm run build:linux
```
Il file eseguibile verrà creato in:
- `dist/Traduttore AI-x.x.x.AppImage`
Per eseguire:
```bash
chmod +x "dist/Traduttore AI-x.x.x.AppImage"
./"dist/Traduttore AI-x.x.x.AppImage"
```
#### Windows (Installer .exe)
```bash
npm run build:win
```
Il file installer verrà creato in:
- `dist/Traduttore AI Setup x.x.x.exe`
Installa l'applicazione eseguendo il file `.exe`.
#### Build completa (tutte le piattaforme)
```bash
npm run build
```
## 🎯 Come Usare
### Primo Avvio
1. **Avvia l'app** con `npm start` (dev) o esegui il file buildato
2. **Configura Ollama**: clicca sull'icona ⚙️ in alto a destra
3. **Inserisci l'URL**: di default è `http://localhost:11434`
4. **Clicca "Aggiorna"** per caricare i modelli disponibili
5. **Seleziona un modello** dalla lista
6. **Clicca "Salva"**
### Tradurre un Testo
1. **Scrivi o incolla** il testo nell'area a sinistra
2. L'app rileverà **automaticamente** la lingua (🇮🇹 Italiano o 🇬🇧 Inglese)
3. Clicca il pulsante **"Traduci"** o premi `Ctrl+Enter`
4. La traduzione apparirà nell'area a destra
### Scorciatoie da Tastiera
| Tasto | Azione |
|-------|--------|
| `Ctrl+Enter` | Traduci il testo |
| `Ctrl+,` | Apri impostazioni |
| `Ctrl+Q` | Esci dall'applicazione |
| `Esc` | Chiudi modale impostazioni |
| `Ctrl+C` | Copia testo selezionato |
| `Ctrl+V` | Incolla testo |
| `Ctrl+X` | Taglia testo selezionato |
| `Ctrl+A` | Seleziona tutto il testo |
### Menu Contestuale (Tasto Destro)
Clicca con il tasto destro su qualsiasi textarea per:
- Taglia
- Copia
- Incolla
- Seleziona tutto
- Elimina
## 🛠️ Risoluzione Problemi
### "Errore: fetch failed" o "ECONNREFUSED"
**Problema**: L'app non riesce a connettersi a Ollama
**Soluzioni**:
1. Verifica che Ollama sia in esecuzione:
```bash
curl http://localhost:11434/api/tags
```
2. Se non risponde, avvia Ollama:
```bash
ollama serve
```
3. Verifica che la porta non sia occupata:
```bash
# Linux
netstat -tulpn | grep 11434
# Windows
netstat -ano | findstr 11434
```
### "Nessun modello trovato"
**Problema**: Ollama non ha modelli installati
**Soluzione**:
```bash
ollama pull llama3
# oppure
ollama pull qwen3:8b
```
### Traduzione lenta o non risponde
**Possibili cause**:
- Modello troppo pesante per il tuo hardware
- Memoria RAM insufficiente
- GPU non utilizzata (se disponibile)
**Soluzioni**:
- Usa un modello più leggero: `ollama pull mistral` o `ollama pull llama3:8b`
- Chiudi altre applicazioni per liberare RAM
- Verifica che Ollama stia usando la GPU: `ollama ps`
### Errore su Windows: "Ollama not found"
**Soluzione**:
1. Verifica che Ollama sia installato correttamente
2. Aggiungi Ollama al PATH di sistema:
- Pannello di Controllo → Sistema → Impostazioni Avanzate → Variabili d'ambiente
- Aggiungi il percorso di installazione di Ollama (es: `C:\Users\<username>\AppData\Local\Programs\Ollama`)
### Problemi con IPv6 (Linux)
Se vedi errori come `connect ECONNREFUSED ::1:11434`, l'app ora gestisce automaticamente questo problema sostituendo `localhost` con `127.0.0.1`.
## 📁 Struttura del Progetto
```
Traduttore/
├── main.js # Processo principale Electron
├── preload.js # Bridge sicuro tra processi
├── index.html # Interfaccia utente
├── renderer.js # Logica applicazione
├── styles.css # Stili e design
├── package.json # Configurazione npm
└── README.md # Questo file
```
## 🔧 Configurazione Avanzata
### Cambiare la porta di Ollama
Se vuoi usare una porta diversa per Ollama:
**Linux**:
```bash
OLLAMA_HOST=0.0.0.0:8080 ollama serve
```
**Windows**:
```cmd
set OLLAMA_HOST=0.0.0.0:8080
ollama serve
```
Poi nell'app, imposta l'URL: `http://localhost:8080`
### Modelli Consigliati
| Modello | Dimensione | Qualità | Velocità | Uso |
|---------|-----------|---------|----------|-----|
| llama3 | 4.7 GB | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | Uso generale |
| qwen3:8b | 4.9 GB | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | Traduzioni accurate |
| mistral | 4.1 GB | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | Buon compromesso |
| llama3:8b | 4.7 GB | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | Versione ridotta |
## 🤝 Contribuire
Se vuoi contribuire al progetto:
1. Fork il repository
2. Crea un branch: `git checkout -b feature/nuova-funzionalita`
3. Committa le modifiche: `git commit -am 'Aggiunta nuova funzionalità'`
4. Push al branch: `git push origin feature/nuova-funzionalita`
5. Apri una Pull Request
## 📝 Changelog
### v1.0.0
- ✨ Rilascio iniziale
- 🎨 Design moderno con gradienti
- 🤖 Integrazione Ollama
- 🔄 Rilevamento automatico lingua
- 📋 Menu contestuale tasto destro
- 🖥️ Supporto Linux e Windows
## 📄 Licenza
MIT License - vedi file [LICENSE](LICENSE) per i dettagli.
---
Fatto con ❤️ e ☕ per la comunità open source
**Autore**: Tu
**Versione**: 1.0.0