FMFrancisco Morettiinfranciscomoretti.hashnode.dev·Aug 25, 2025 · 2 min readFix mobile keyboard overlap with VisualViewportEdited 2025-08-26: The previous version recommended syncing visualViewport.height to a CSS variable with an observer. That was wrong for this use case. The actual fix in Sparka is to rely on dynamic v00
FMFrancisco Morettiinfranciscomoretti.hashnode.dev·Aug 25, 2025 · 8 min readDeep Research UIs - Perplexity vs. Manus vs. ChatGPT vs. GeminiBuilding chat applications often involves tackling complex user interfaces. This is especially true for "deep research" tasks where information density is high. Components like reports, research steps00
FMFrancisco Morettiinfranciscomoretti.hashnode.dev·Apr 29, 2025 · 8 min readDeep Research UIs - Perplexity vs. Manus vs. ChatGPT vs. GeminiBuilding chat applications often involves tackling complex user interfaces. This is especially true for "deep research" tasks where information density is high. Components like reports, research steps00
FMFrancisco Morettiinfranciscomoretti.hashnode.dev·Apr 4, 2025 · 6 min readWhat tests to write for ReactThis article explores what tests you should be writing for your web applications. Inspired by Igor Luchenkov's insightful talk at React Advanced London and drawing on wisdom from industry experts, we'00
FMFrancisco Morettiinfranciscomoretti.hashnode.dev·Apr 1, 2025 · 6 min readNext.js Authentication Best Practices in 2025Note: This article updates previous authentication guide, which contained outdated recommendations. Next.js has since changed its authentication guidance, particularly in light of the CVE-2025-29927 security vulnerability. This articles containes a ...00