@@ -1084,3 +1084,33 @@ Comando testato: `python3 convert_akomantoso.py --search "legge di bilancio 2024
10841084- Rimossi tutti i file ` output*.md ` dalla root del progetto.
10851085- Aggiunto il pattern ` output*.md ` al ` .gitignore ` .
10861086- Committate e pushate le modifiche.
1087+
1088+ ## 2025-12-04
1089+
1090+ ### Planning: API Programmabile
1091+
1092+ Creata pianificazione completa per rendere normattiva2md usabile da notebook e script Python:
1093+
1094+ ** Documentazione creata:**
1095+ - ` planning/api-programmabile/ ` - cartella completa pianificazione
1096+ - 7 documenti tecnici dettagliati (architettura, specs, models, exceptions, plan, examples, index)
1097+ - Piano implementazione 6 fasi (14-21h totali)
1098+
1099+ ** Decisioni architetturali:**
1100+ - Stile misto: funzioni standalone + classe ` Converter `
1101+ - Output: oggetto ` ConversionResult ` con markdown + metadata
1102+ - Errori: strategia ibrida (eccezioni gravi + None per soft errors)
1103+ - Type hints completi (Python 3.7+ compatible)
1104+ - Logging invece di print() per API
1105+ - Struttura preparata per future versioni async
1106+
1107+ ** File pianificati:**
1108+ - ` src/normattiva2md/exceptions.py ` - sistema eccezioni custom
1109+ - ` src/normattiva2md/models.py ` - dataclasses ConversionResult, SearchResult
1110+ - ` src/normattiva2md/api.py ` - API programmabile
1111+ - ` examples/notebook_quickstart.ipynb ` - Jupyter notebook dimostrativo
1112+ - ` docs/notebook_examples.md ` - esempi pratici completi
1113+
1114+ ** Compatibilità:** 100% backward compatible - CLI funziona esattamente come prima
1115+
1116+ ** Prossimo step:** Review pianificazione → implementazione Fase 1 (Foundation)
0 commit comments