I build software that watches the body and fixes what's broken around it β a posture model that catches you slouching, a booking platform that stops clinics from losing appointments. Scientific high-school student in Pescara, heading toward biomedical engineering and applied AI.
- π₯ 1st place in Italy β Technovation Girls with Oruma, a healthcare booking platform built for the Abruzzo region
- π§ Working where machine learning meets medicine: pose classification, health data models, assistive tech
- β‘ Ship-fast track record β hackathons, national competitions, and industry project work with Zucchetti
- π Currently going deeper on computer vision and Python for scientific computing
- π€ Open to research programmes, internships, hackathon teams, and collaboration on health-tech
| Project | What it is | Stack | Standout |
|---|---|---|---|
| Oruma Β· live β | Patient β clinic booking platform for the Abruzzo region | React Β· Tailwind Β· Radix Β· Base44 | π₯ 1st in Italy Β· patient reliability scoring |
| PosturiAmo | Real-time webcam posture coach | PictoBlox Β· Teachable Machine | 3-class pose model with confidence gating |
| STEAMwho Β· source β | Guessing engine for STEAM figures | Vanilla JS Β· HTML5 Β· CSS3 | Zero dependencies, zero build step |
Live demo 1st place Technovation Girls Italy
Connects patients with clinics and gives small practices the scheduling tools that only large hospitals can afford.
The problem. Italian public healthcare loses enormous clinical capacity to missed appointments β slots that stay empty while waiting lists grow. Patients chase availability over the phone; small clinics still run their diary on paper. Built for the Abruzzo region as our Technovation Girls entry, where teams identify a community problem and ship a working product against it.
What it does
- Patients β geolocated search of clinics and specialists, calendar slot booking, and one dashboard for every upcoming visit
- Clinics β self-service onboarding, service catalogue, opening-hours editor, staff management by invite link, and a booking dashboard with optional manual approval
- Both sides β a two-way reschedule negotiation: either party proposes a new time, the other accepts, with explicit pending states throughout
- Reliability scoring β every patient starts at 100; staff-reported no-shows lower it. Clinics see an Affidabile / Inaffidabile signal and, below 50, a prompt to require advance payment
Technical highlights
- Relational model across 7 entities β
Clinic,ClinicStaff,Service,OpeningHours,Appointment,NoShowReport,User - Availability engine that derives bookable slots from each clinic's opening hours, service duration, and already-booked appointments
- Role-aware rendering β patient, clinic staff, and owner get distinct dashboards across 11 screens from one shared component library
- Browser geolocation for distance-ranked search results
- GDPR-conscious onboarding β explicit privacy consent gates account creation on both sides
- Invite-code flow so clinic owners can add staff without handling credentials
A webcam coach that notices you slouching before your back does.
The problem. Students and desk workers sit for hours, and posture damage is silent β forward-head "tech neck" and lumbar slouching go unnoticed until they hurt. The missing piece isn't willpower, it's awareness in the moment. Built under hackathon time pressure, with the whole loop β problem framing, model training, interface, voice coaching β delivered inside the event window.
What it does
- Classifies the live webcam feed into three states β
COLLO(forward neck),SCHIENA(slouched back),VUOTO(nobody at the desk) β using a Teachable Machine pose model - Vera, an animated spine mascot, shifts green β yellow β red as a glanceable status light
- Recorded Italian voice coaching fires cues matched to the fault: "Alza lo schermo all'altezza degli occhi", "Schienale e piedi a terra"
- A sedentary timer tracks minutes seated and breaks taken; sit still too long and it calls an active break, drawing from a library of 8 exercises
Technical highlights
- Confidence gating at 0.7 plus temporal debouncing β a class must persist across checks before any advice fires, which kills the flicker and false positives that naive frame-by-frame classification produces
- Event-driven architecture β separate broadcast channels (
motore,orologio,pausa,consiglio_collo,consiglio_curva) decouple the inference loop from the timer and the coaching layer - Runtime-tunable confidence threshold, so the model can be retuned live for different lighting and desk setups
- Distinguishes absent from bad posture, so the timer never penalises you for standing up
Source Zucchetti Academy Project Work
Think of a scientist. It finds them in ten yes/no questions.
The problem. Ask a class to name five scientists and you'll hear the same three men. 8 of the 20 figures here are women β Lovelace, Curie, Hopper, Noether, Franklin, Meitner, Johnson, Hypatia β so the game quietly widens the canon while it plays. Delivered as project work for the Zucchetti Academy.
What it does
- Holds 20 STEAM figures, each described by a 12-attribute feature vector (field, century, nationality, Nobel laureate, discipline flags)
- Narrows the candidate pool question by question and reveals the answer with a fact sheet
- A live candidate strip shows the search space shrinking in real time β the algorithm made visible
Technical highlights
- Candidate-set filtering over the attribute vectors, with early exit the moment a single figure remains β usually well before question ten
- Graceful degradation: if a contradictory answer empties the pool, the engine recovers instead of dead-ending
- Zero dependencies, zero build step β one self-contained HTML file that runs from a double-click
- Hand-rolled CSS design system: custom properties for theming, animated grid background, gradient-masked type, and a screen-state router built from scratch
Languages
Frontend
AI & Data
Tools
Building something at the intersection of health and AI? Looking for a teammate for a hackathon or a research project? I'd like to hear about it.