Tutor di matematica locale con chat AI, GeoGebra e calcolo esatto SymPy. La API key resta sul tuo PC.
Percorso guidato per il primo avvio: docs/USER-GUIDE.md.
Doppio click su setup.cmd, poi start-mathapp.ps1. Oppure:
powershell -ExecutionPolicy Bypass -File .\setup.ps1
.\start-mathapp.ps1setup.ps1 scarica Node.js LTS portatile in .tools\ (nessun admin). Con -Math installa Python/SymPy/pypdf; con -Full anche faster-whisper.
Serve Node.js 18+ e, facoltativamente, Python 3:
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -r requirements.txt # SymPy + pypdf (opzionale)
npm startApri http://127.0.0.1:8790. setup.ps1/start-mathapp.ps1 sono solo Windows; su macOS/Linux il core è npm start. Per la dettatura: pip install -r requirements-whisper.txt. Dettagli: docs/SETUP-MACOS-LINUX.md.
- Core: chat, sessioni/cronologia paginata, GeoGebra, SymPy, backup automatici configurabili, sicurezza.
- Offline: dopo il primo caricamento il service worker conserva UI e asset CDN (GeoGebra/KaTeX); le API e i dati utente non vengono mai messi in cache.
- Completa (opzionale): quiz, ripasso, appunti/KB, flashcard, TTS, dettatura, stile. Si attiva da Impostazioni → Modalità.
- BYO key: OpenRouter o OpenCode Go, configurata in Impostazioni. Nessuna telemetria; la chiave non è nei backup.
npm run lint # ESLint (no-undef e regole di correttezza)
npm test # 135 check Node
npm run test:ui # 29 check browser (richiede Edge/Chrome + puppeteer-core)
npm run test:xss # 14 check browser XSS (richiede Edge/Chrome + puppeteer-core)
npm run test:switch # 1 check cambio conversazione (richiede Edge/Chrome + puppeteer-core)
npm run test:geo # 5 check GeoGebra (richiede CDN)
npm run eval # 17 casi SymPy
npm run coverage # copertura Node (soglia 65%)
npm run test:py # 29 test Python (opzionale)
npm run eval:ai # eval con provider reale, solo con chiavePer una release: npm run package crea release/mathapp-v<versione>.zip (sorgente, richiede worktree pulito).
CI su Windows e Linux (Node 18/20/22) con branch protection. Diagnostica: GET /api/diagnostics (alias /api/health) o .\start-mathapp.ps1 -Check.
- Guida completa Contributing Security
- Architettura · Contratti · Modello dati · Persistenza
- Capabilities · Sicurezza · Performance · Scorecard
- Setup Windows · Setup macOS/Linux · Troubleshooting
- Quality gate Release Osservability Limiti noti ADR
server.mjs guscio HTTP
routes/ API (core + plugin opzionali on-demand)
lib/ dominio, adapter, storage, sicurezza, diagnostica
public/ UI, state store, feature plugins lazy
test/ test Node/browser/Python
eval/ casi matematici deterministici
docs/ guide, contratti e decisioni
Licenza MIT.