Repository navigation
v1.4.0 - Architettura Modulare
🍕 Datapizza v1.4.0 - Architettura Modulare
Refactoring completo dell'interfaccia! Il file monolitico v1.3.3 (2287 righe) è stato riorganizzato in una struttura pulita di 27 moduli Python distribuiti in 6 packages.
✨ Highlights
- ♻️ Architettura modulare - Codice organizzato in packages separati
- 📦 Entry point unificato - Avvia con
streamlit run app.py - 🗂️ Vecchi file archiviati - Tutte le versioni precedenti in
old/ - ✅ Zero breaking changes - Stesso comportamento di v1.3.3
🏗️ Nuova Struttura
datapizza-streamlit-interface/
├── app.py # ⭐ Entry point
├── config/ # Configurazione (constants, settings)
├── core/ # LLM client, persistenza, conversazioni
├── rag/ # RAG: models, chunker, vector_store, adapters
├── export/ # Export: MD, JSON, TXT, PDF, ZIP
├── ui/ # Streamlit UI: styles, chat, sidebar
└── old/ # Versioni archiviate (v1.0 → v1.3.3)
🚀 Quick Start
# Clone/Pull git pull origin mainAvvia (nuovo!)
streamlit run app.py
📦 Packages
| Package | Moduli | Responsabilità |
|---|---|---|
| config/ | 3 | Costanti, settings, API keys |
| core/ | 4 | LLM client, persistenza, conversazioni |
| rag/ | 8 | Document, Chunk, Chunker, VectorStore, Adapters |
| export/ | 2 | Tutti i formati export + batch ZIP |
| ui/ | 7 | Styles, chat rendering, sidebar components |
| old/ | 5 | Archivio versioni precedenti |
🔧 Miglioramenti Tecnici
- Separazione responsabilità: Ogni modulo ha un compito specifico
- Testabilità: Componenti isolati e facilmente testabili
- Manutenibilità: Modifiche localizzate senza impatti globali
- Riusabilità: Componenti importabili in altri progetti
- Import puliti: Ogni package espone API chiare via
__init__.py
📋 Funzionalità (invariate da v1.3.3)
- 🤖 Multi-provider: Ollama, Remote, Cloud (OpenAI, Anthropic, Google)
- 💬 Conversazioni multi-turno con memoria
- 💾 Persistenza automatica su JSON
- 📚 Knowledge Base RAG (LocalFolder + MediaWiki)
- 📤 Export: Markdown, JSON, TXT, PDF, Batch ZIP
- 🔒 Privacy mode: blocco cloud con KB attiva
📥 Installazione
# Ambiente virtuale python3 -m venv deepaiug-interface source deepaiug-interface/bin/activateDipendenze (ordine importante!)
pip install datapizza-ai
pip install datapizza-ai-clients-openai-like
pip install streamlit pyyaml python-dotenv
pip install chromadb beautifulsoup4 PyPDF2
pip install mwclient reportlab
🙏 Credits
Grazie alla community DeepAiUG per il supporto e i feedback!
Full Changelog: https://github.com/EnzoGitHub27/datapizza-streamlit-interface/compare/v1.3.3...v1.4.0