// progetti
←
DocMorph — Conversione DOCX in PDF via microservizio HTTP
Microservizio HTTP stateless che converte DOCX in PDF via LibreOffice, con auth API key, rate limiting e immagine Docker multi-stage

DocMorph converte documenti .docx in PDF esponendo un'API HTTP minimale (`POST /convert`, `GET /health`) pensata per uso container-first e sicura sotto concorrenza. Un pool a semaforo orchestra le conversioni LibreOffice headless con isolamento per job, mentre auth API key, validazione degli upload e rate limiting proteggono il servizio in produzione. La stack è completata da un'immagine Docker multi-stage e una landing React con prerendering SSR, distribuita via GitHub Actions.
// features
- »API REST con validazione upload .docx via magic-byte OOXML e verifica integrità del PDF prodotto con assertion %PDF
- »Pool a semaforo con max 3 conversioni LibreOffice simultanee e profilo utente dedicato per job, per isolamento totale tra le richieste
- »Auth API key con hashing SHA-256 e confronto timingSafeEqual, abbinata a rate limiting per IP con header RateLimit draft-8
- »Immagine Docker multi-stage con LibreOffice Writer e font Microsoft core, eseguita come utente non-root con dumb-init e healthcheck pubblico
- »Landing React 19 + Vite 7 con prerendering SSR, syntax highlight Shiki e plugin Subresource Integrity
- »Deploy automatico su GitHub Pages via GitHub Actions con build TypeScript, prerendering e dominio custom via CNAME
// skills
Node.js 22TypeScriptExpressMulterREST APILibreOffice headlessDockerGitHub ActionsGitHub PagesReact 19ViteShikiSHA-256Subresource Integrity