Editor PDF browser-only costruito con Angular standalone. L'app apre PDF locali, applica overlay grafici e testuali, compila parte dei form, gestisce merge e operazioni pagina, e salva il risultato direttamente nel browser senza backend.
Il progetto oggi e una base tecnica funzionante, ma non ancora pronta per produzione.
- setup, build e dipendenze runtime sono stati stabilizzati;
- lo stato editor e centralizzato in uno store dedicato;
- l'editor supporta reorder, duplicate, export selettivo, split ZIP e autosave locale;
pdf.js,jszipe i componenti editor pesanti vengono caricati lazy, riducendo il bundle iniziale;- autosave e restore gestiscono in modo esplicito storage bloccato, quota esaurita e salvataggi ridondanti;
- la firma supportata e solo grafica, non digitale;
- il piano attivo ora e di consolidamento delle implementazioni residue, non di nuove feature.
- apertura di PDF locali;
- testo libero, forme, immagini e firme come overlay;
- modifica del testo esistente solo su PDF con text layer nativo riconosciuto da
pdf.js; - penna, evidenziatore e whiteout;
- compilazione di alcuni campi form;
- rotazione, cancellazione, duplicazione e riordino pagine;
- merge di PDF e immagini;
- export del documento, export pagine selezionate e split in ZIP;
- autosave locale dell'ultima sessione con restore da home.
- la modifica del testo esistente richiede un text layer nativo e viene salvata come sostituzione visiva affidabile, non come riscrittura semantica del contenuto PDF;
- mancano ancora smoke test UI end-to-end;
AppComponentconcentra ancora troppa logica di orchestrazione;- OCR, redazione reale e firma digitale restano fuori dallo scope del core editor;
- il prossimo focus e la copertura smoke UI dei flussi
add text,edit text, operazioni pagina ed export.
npm install
CI=1 npm run dev -- --host 0.0.0.0 --port 3000Per validare il progetto:
npm run build
npm run build -- --configuration development
npm testNota bundle:
- il build production ora separa chunk lazy per viewer PDF, signature pad, merge tools,
pdf.jsejszip; - restano warning CommonJS residui su
pdfjs-dist,jszip,pakoe il modulocanvastransitivo dipdf.js.
Script automatici per modulo:
npm run test:plugin:pdf
npm run test:plugin:store
npm run test:plugin:signatures
npm run test:plugin:draft
npm run test:plugin:merge- introdurre smoke test UI sui flussi chiave;
- ridurre la logica residua dentro
AppComponent; - continuare la riduzione degli
anyresidui; - tenere il backlog avanzato separato dal core editor.