Siti web

Portfolio professionale

Portfolio progettato per qualificare le richieste in entrata: case study, servizi, prenotazioni e contenuti sono stati strutturati per comunicare metodo, posizionamento e valore prima del primo contatto.
Ottavio Tedesco20256 mesi
Portfolio professionale

Obiettivo del progetto

Un portfolio può limitarsi a mostrare lavori fatti oppure diventare uno strumento per qualificare le richieste in entrata. Ho scelto la seconda strada: ogni sezione è stata progettata per comunicare metodo, posizionamento e criteri di scelta, non solo estetica e tecnologie usate.
L'obiettivo era costruire un sito capace di orientare il cliente prima del primo contatto: chiarire cosa faccio, per chi ha senso lavorare con me e quali segnali distinguono un progetto serio da una richiesta generica.
CMS-less
architettura su misura
WCAG 2.1
criteri AA considerati
20+
logiche riutilizzabili
6 mesi
iterazione e rifinitura
01Contesto iniziale
Molti portfolio sviluppatori funzionano così: screenshot, lista di tecnologie, qualche descrizione sintetica e un form di contatto. Il problema è che spesso manca il ragionamento: perché certe scelte sono state fatte, cosa è stato escluso, quali vincoli hanno guidato il progetto e come il lavoro ha generato valore. Il rischio era fare la stessa cosa: un sito esteticamente curato, ma incapace di comunicare il metodo di lavoro a chi lo visita per capire se affidarmi un progetto.
02Decisioni prese

React 19 + Vite invece di un CMS

Un portfolio tecnico deve essere controllabile nel dettaglio: struttura dati, routing, performance, bundle e componenti. Un CMS avrebbe introdotto un livello di gestione non necessario per contenuti stabili e fortemente progettati.

Backend PHP custom per il form contatti invece di un servizio terzo

Servizi come EmailJS hanno limiti di piano, controllo ridotto sui template e meno margine sulla gestione del flusso. Con un backend PHP custom ho mantenuto controllo su validazione, template dinamici e doppia email automatica: conferma all'utente e notifica interna.

Design system con dark mode nativa

La dark mode non è stata aggiunta dopo: colori, contrasti, stati UI e variabili CSS sono stati pensati fin dall'inizio per funzionare in entrambe le modalità, senza duplicare stili o creare eccezioni difficili da mantenere.

Sezioni case study strutturate per comunicare metodo

Un cliente qualificato non vuole vedere solo cosa ho fatto, vuole capire come ragiono. La struttura Contesto / Decisioni / Escluso obbliga ogni progetto a mostrare scelte, vincoli e priorità, non solo risultati o funzionalità.

03Cosa è stato escluso
CMS headless per il blogDashboard analytics pubblicaTabella prezzi in homepageChatbot AI

Il blog è gestito tramite inserimenti SQL diretti nel database, senza un pannello di amministrazione dedicato: un CMS headless avrebbe introdotto un'infrastruttura separata da deployare e mantenere. La tabella prezzi in homepage avrebbe spostato l'attenzione sul costo prima del problema, mentre i range economici hanno più senso nelle pagine servizio. La dashboard analytics è informazione interna che non aiuta il visitatore a decidere. Il chatbot AI avrebbe aggiunto complessità senza valore reale per il tipo di contatto che voglio generare.

Funzionalità realizzate

✓
Sistema accessibilità WCAG 2.1 - Widget personalizzato, contrasto elevato dinamico e font scaling CSS variables
✓
Architettura React scalabile - Context API (Theme/Accessibility) elimina prop drilling per performance ottimali
✓
Cookie Management GDPR-compliant - Gestione granulare consensi (necessari, preferenze, analytics, marketing)
✓
Backend PHP type-safe - Form contatti dual-email con template dinamici e strict_types
✓
Booking System integrato - Cal.com con multiple entry point per prenotazione consulenze dirette
✓
Design responsive Tailwind CSS v4 - Dark/light mode automatico e mobile-first approach
✓
20+ Hooks personalizzati - Navigazione, filtri real-time, form validation e gestione stato avanzata

Impatto del progetto

Accessibilità misurata

Lighthouse Accessibility 100 su desktop e mobile, a supporto di un'interfaccia più robusta.

Performance verificate

PageSpeed 90 mobile e 100 desktop, con layout stabile e tempi di blocco controllati.

SEO tecnica solida

Lighthouse SEO 100 e audit SEO 97/100, con struttura tecnica leggibile e coerente.

Sistema di prenotazione integrato

Cal.com con più punti di ingresso pensati per ridurre i passaggi prima della conversione.

Architettura modulare

20+ hook personalizzati, configurazioni centrali e pattern riutilizzabili per manutenibilità a lungo termine.

Percorso commerciale più chiaro

Case study, servizi e CTA guidano l'utente verso una richiesta più qualificata, non verso un contatto generico.

Galleria del progetto

Screenshot delle sezioni principali del progetto.

Homepage portfolio professionale React 19 Vite Tailwind CSS responsive design

Homepage Portfolio React 19 - Hero Section Responsive

Widget accessibilità WCAG 2.1 contrasto elevato font scaling CSS variables

Sistema Accessibilità WCAG 2.1 - Widget Avanzato

Portfolio progetti filtri real-time ricerca React hooks categorizzazione dinamica

Portfolio Progetti - Filtri Real-time e Ricerca

Form contatti PHP backend dual-email validation Cal.com booking integration

Form Contatti PHP + Cal.com Booking Integration

Cookie banner GDPR compliant gestione granulare consensi localStorage privacy

Cookie Management GDPR-Compliant - Gestione Granulare

Design responsive dark light mode automatico Tailwind CSS v4 mobile-first

Design Responsive - Dark/Light Mode Tailwind CSS v4

Servizio correlato

Siti web professionali

Siti web professionali

Questo progetto rientra in questo servizio

Scopri il servizio

Tecnologie Utilizzate

React 19Vite 7Tailwind CSS v4PHPCal.com

Info Progetto

Cliente

Ottavio Tedesco

Anno

2025

Durata

6 mesi

Categoria

Siti web

Output

  • Sito React 19 con Vite 7 e Tailwind CSS v4
  • Widget accessibilità personalizzato con criteri WCAG 2.1 considerati
  • Manifest web app e configurazione installabilità dove supportata
  • Sezioni case study con struttura Contesto / Decisioni / Escluso
  • Backend PHP type-safe per form contatti con doppia email automatica
  • Design system light/dark basato su CSS Custom Properties

Vuoi un sito che lavori come strumento, non solo come vetrina?

Raccontami il tuo posizionamento, il tipo di cliente che vuoi attrarre e cosa oggi il tuo sito non riesce a comunicare. Da lì capiamo cosa deve selezionare, chiarire o escludere.

Hai un progetto che deve funzionare, non solo esistere?

Raccontami il contesto e l'obiettivo, non la soluzione. Valuterò con sincerità se ha senso lavorare insieme e in che modo. Se non sono la persona giusta, te lo dirò subito.