Applicazione web mobile-first per calcoli enologici professionali.
- ✅ Calcolatori Enologici Professionali
- 🌍 Multilingua - Supporto completo per IT, EN, FR, ES, DE
- 📱 Mobile-First - Design ottimizzato per smartphone e tablet
- 📲 Progressive Web App (PWA) - Installabile su mobile e desktop, funziona offline
- 🎨 Interfaccia Moderna - Bootstrap 5 con tema personalizzato ispirato al vino
- ⚡ Veloce e Leggero - Nessuna dipendenza backend, solo HTML/CSS/JS
- 🔧 Open Source - Codice libero e modificabile
- ✅ Anidride Solforosa (SO2)
- Aggiunta Acidi
- Bentonite
- Carbone
- Solfato di Rame
- Cremor Tartaro
- Deacidificazione
- Fosfato Diammonico (DAP)
- Perossido di Idrogeno
- Isinglass
- Metabisolfito di Potassio (PMS)
- PVPP
- Acido Sorbico
- Tannini
- Fortificazione
- Prova Ferrocianuro
- Prova di Chiarifica
- Aggiunta Mosto Concentrato (GJC)
- Micro-ossigenazione
- SO2 Molecolare
- Aggiunta Acqua
- Conversioni Generali
- Interconversione Unità di Acidità
- Soluzioni Stock Laboratorio
- Soluzioni Stock Cantina
- Test Preferenza Accoppiata
- Analisi Same/Different
- Test Duo-trio
- Test Confronto Accoppiato
- Test Triangolare
- Calcolatore Proporzione Metanolo
- Calcolatore Unità Alcoliche Standard
- Calcolatore Refrigerazione Cantina
# Installa le dipendenze (solo la prima volta)
npm install
# Avvia il server
npm start
# Apri il browser su:
# http://localhost:8000# Python 3
python3 -m http.server 8000
# Apri il browser su:
# http://localhost:8000# Esegui tutti i test
npm test
# Esegui test con coverage
npm run test:coverage
# Esegui test in watch mode (auto-rerun)
npm run test:watch✅ 37 test automatici - 90%+ code coverage ✅ GitHub Actions CI/CD - Test automatici ad ogni push
Per testare l'app dal tuo smartphone sulla rete locale:
- Avvia il server:
npm start - Trova l'indirizzo IP del tuo computer:
# Linux/Mac ifconfig | grep inet # Windows ipconfig
- Sul tuo smartphone, apri il browser e vai a:
Esempio:
http://[IP_TUO_COMPUTER]:8000http://192.168.1.100:8000
WineCalc può essere installato come app nativa su smartphone e desktop:
- Apri l'app nel browser (Chrome/Safari)
- Cerca l'opzione "Aggiungi a schermata home" o "Installa app"
- Su Android: tap sul menu (⋮) > "Installa app" o "Aggiungi a schermata Home"
- Su iOS/Safari: tap sul pulsante condividi > "Aggiungi a schermata Home"
- Apri l'app nel browser
- Cerca l'icona di installazione nella barra degli indirizzi
- Oppure: Menu > "Installa WineCalc"
- ✅ Funziona offline - Accesso ai calcolatori senza connessione
- ✅ Icona sulla schermata home - Avvio rapido come un'app nativa
- ✅ Nessun app store - Installazione diretta dal browser
- ✅ Aggiornamenti automatici - Sempre l'ultima versione
- ✅ Esperienza nativa - Schermo intero, niente barre del browser
Nota: La PWA richiede HTTPS per funzionare. Su localhost non è necessario, ma per l'installazione da remoto serve un certificato SSL.
- HTML5 - Struttura semantica
- CSS3 - Stili moderni con variabili CSS
- JavaScript ES6+ - Logica applicazione con moduli ES6
- Bootstrap 5.3.3 - Framework CSS responsive
- Bootstrap Icons - Icone
- i18next - Gestione multilingua
- Service Worker - Funzionalità offline e caching
- Web App Manifest - Installabilità PWA
WineCalc utilizza un'architettura modulare basata su configurazione JSON che permette di aggiungere nuovi calcolatori facilmente senza modificare il codice core. Controllare il file ARCHITECTURE.md per i dettagli.
- Crea un nuovo file in
locales/, es.pt.jsonper il portoghese - Copia la struttura da un file esistente (es.
it.json) - Traduci tutti i campi
- Aggiungi la lingua in
js/i18n.js:
const SUPPORTED_LANGUAGES = ['it', 'en', 'fr', 'es', 'de', 'pt'];
const LANGUAGE_INFO = {
// ... lingue esistenti ...
pt: { name: 'Português', flag: '🇵🇹', code: 'PT' }
};- Aggiungi l'opzione nel dropdown della navbar in
index.html
MIT License - Vedi file LICENSE per dettagli.
Se trovi un bug o hai un suggerimento:
- Apri una Issue su GitHub
- Descrivi il problema in dettaglio
- Includi screenshot se possibile
- Specifica browser e dispositivo utilizzato
I contributi sono benvenuti! Per contribuire:
- Fai un Fork del repository
- Crea un branch per la tua feature (
git checkout -b feature/AmazingFeature) - Commit delle modifiche (
git commit -m 'Add some AmazingFeature') - Push al branch (
git push origin feature/AmazingFeature) - Apri una Pull Request
Per domande o supporto, apri una Issue su GitHub.
Fatto con ❤️ per gli enologi e i produttori di vino di tutto il mondo.
🍇 Buona vinificazione! 🍷