PDF Toolkit
Una suite per browser per unire, dividere, organizzare, convertire e comprimere file PDF, in cui i file non lasciano mai il dispositivo.
Next.js 16
React 19
Tailwind CSS 4
pdf-lib
PDF.js
Ghostscript (WASM)
dnd-kit
JSZip

Panoramica
PDF Toolkit è una risposta lato client a strumenti come iLovePDF. Gestisce le operazioni quotidiane sui PDF più comuni, tra cui unione di file, estrazione di pagine, riordinamento e rotazione, conversione da e verso immagini e compressione, ed esegue tutto all'interno del browser. Nessun file viene caricato. Il sito di marketing e il catalogo degli strumenti precedono una serie di aree di lavoro interattive, ciascuna delle quali è uno strumento autonomo.
Il problema
I più diffusi strumenti PDF online funzionano tutti allo stesso modo. Si carica il documento su un server, viene elaborato e si scarica il risultato. Per una rapida conversione di un'immagine può andar bene. Per un contratto firmato, la scansione di un documento d'identità, un referto medico o un estratto conto finanziario, significa affidare un file riservato a terze parti fidandosi della loro politica di conservazione dei dati. C'era un chiaro bisogno di uno strumento in grado di svolgere le stesse operazioni mantenendo ogni file direttamente sul dispositivo dell'utente.
Il mio ruolo e approccio
Ho sviluppato l'intero prodotto: il sito di marketing, il catalogo degli strumenti e ogni singola funzionalità operativa. La decisione cardine è stata di carattere architetturale: eseguire tutte le elaborazioni PDF direttamente nel browser. Tale scelta ha orientato ogni altro sviluppo, poiché l'elaborazione lato client ha eliminato la necessità di gestire server, azzerato i costi per singolo file e fornito una garanzia di privacy chiara e trasparente: i file non vengono mai inviati altrove.
Stack tecnologico
Funzionalità chiave
Galleria


Sfide e soluzioni
La difficoltà di un approccio "senza server" risiede nel fatto che il browser deve eseguire tutte le operazioni normalmente delegate a un server. Ho suddiviso il carico di lavoro su due motori: pdf-lib si occupa delle modifiche strutturali in cui la composizione interna del documento viene riscritta, mentre PDF.js gestisce il rendering ogni volta che una pagina deve essere mostrata a schermo o convertita in immagine.
La compressione è stata la sfida più complessa. Una vera compressione dei PDF si basa in genere su Ghostscript, un pesante strumento nativo ospitato su un server. Per mantenere intatta la promessa di privacy, ho impiegato una build WebAssembly di Ghostscript, consentendo allo stesso motore di operare localmente nel browser. La compressione è autentica e, al contempo, nessun file viene mai caricato. Il riordinamento di pagine e file doveva risultare intuitivo e fluido, così ho adottato dnd-kit per un drag-and-drop naturale, raggruppando le esportazioni di più immagini in un unico file ZIP con JSZip invece di avviare decine di download separati.
Risultato
Il risultato è un toolkit completo in stile iLovePDF che funziona senza backend, senza archiviazione di file e senza costi di hosting oltre alla distribuzione statica, offrendo al contempo qualcosa che i player affermati non possono garantire: la certezza affidabile che i documenti non lasciano mai il dispositivo. È uno strumento davvero utile, che dimostra quanto carico di lavoro possano gestire i browser moderni.
Hai un problema di prodotto simile?
Condividi il prodotto attuale, il risultato di cui hai bisogno e i vincoli già presenti. Li utilizzerò per definire un primo milestone sensato.
Servizi di sviluppo di applicazioni web