Ricerca contestuale e swipe-to-dismiss — la fluidità prima di tutto
Un'app mobile si giudica in secondi. Il tempo necessario per trovare ciò che cerca e fare ciò che vuole fare.
Ricerca unificata
Un SearchService interroga simultaneamente attività e memo, in tutti i contesti accessibili. I risultati sono ponderati per pertinenza (titolo, contenuto, checklist) e recenza. Tecnicamente, full-text PostgreSQL tramite Supabase.
Ricerca contestuale
Quando si trova in un gruppo, la ricerca prioritizza i risultati di quel gruppo. Il contesto influenza la classificazione senza escludere gli altri risultati.
Swipe-to-dismiss
Ho implementato un pattern swipe-to-dismiss sulle schermate di dettaglio con GestureDetector + Animated.View + un hook useSwipeGesture. La soglia di 100 pixel è stata calibrata dall'uso — il punto ottimale tra accidentale e intenzionale.
Queste funzionalità non sono in una checklist di marketing. Ma la loro assenza si sente. La fluidità è la somma di centinaia di micro-decisioni. È ciò che separa un prototipo da un prodotto.