A self-hosted AI support chat that any website adds with one script tag: an iframe-isolated React widget streaming Gemini replies over SSE, designed and built solo in one week.
The authoring platform behind procedimentipa.gov.it, the Italian government’s public catalog of administrative procedures: AI workflows draft procedures directly from legislation, legal experts review and approve every one, and the approved catalog (~700 procedures today) is published for any citizen to read and search.
Compiles the procedures and laws behind procedimentipa.gov.it into an Obsidian-compatible markdown vault: a linked knowledge graph that people and LLM agents navigate by following links instead of re-running retrieval on every question.
An internal tool that treats prompts like weights. It runs a LangGraph agent over a golden dataset, scores every output with an LLM judge, then evolves the prompt text until the scores climb.
An internal proof of concept built at Go Project: course editors upload their teaching material and get AI-generated study aids back — a two-host Italian audio podcast, quiz questions, and a streaming chat panel.
A self-hosted semantic search engine for CV/profile data. It replaced manual PDF skimming and keyword-only lookup with hybrid vector + keyword search, and the whole pipeline runs on local infrastructure so candidate data never leaves the network.
An asynchronous websocket backend for the Breathment physiotherapy app that analyzes patients’ breathing and movement exercises from a live camera stream, in real time.
Course project for Human Data Analytics (University of Padua): an Xception classifier for lung disease in chest X-ray images, plus an ablation that measures what ImageNet pretraining is worth on a small medical dataset.
A research project for the Network Science course at the University of Padua: do sports brands genuinely spread eco-sustainable values on Twitter, or is it greenwashing?