Juanchi.dev
Digital Native · real systems
·
HomeCasesCVBlogLabContact
Skip to content
Juanchi.dev
Digital Native · real systems
·
HomeCasesCVBlogLabContact

Tag: react

12
Sep 08 2026

The gap between your Server Action and your UI has a name: setQueryData

The Server Action resolves, the toast says "saved," and the UI still shows the old data for a beat. That beat is the gap setQueryData closes without waiting for the full server roundtrip.

Sep 08 2026 · 7′ · Tutorials · Next.js · React

7′
Sep 04 2026

revalidatePath is brute force, revalidateTag is precision

I confused revalidatePath with revalidateTag on a small project and ended up invalidating pages that had nothing to do with the change. Here's the real difference between the two cache granularities in Next.js 16, with a decision checklist.

Sep 04 2026 · 7′ · Tutorials · Next.js · React

7′
Jul 11 2026

Swiper: the touch slider that won't wreck your sprint

Swiper has been the undisputed standard for touch carousels on the web for years. Zero dependencies, official wrappers for React, Vue and Angular, and transitions that feel genuinely native.

Jul 11 2026 · 5′ · Experiments · React · open source

5′
Jun 02 2026

React 19 use() hook and Suspense: when it replaces useEffect and when it throws you into a worse loop

React 19's use() hook promises to replace useEffect for data fetching. That promise is partially true. There are two patterns with Suspense and error boundaries where the behavior isn't what you expect and the cycle gets messier. I'll tell you exactly when to migrate and when not to.

Jun 02 2026 · 7′ · Tutorials · React · TypeScript

7′
May 25 2026

export const revalidate = 0 in Next.js App Router: what it actually does

export const revalidate = 0 makes a Next.js App Router segment dynamic, forcing it to fetch fresh data on every request instead of serving from the Full Route Cache. Here's what it actually does, how it differs from no-store and force-dynamic, and how to decide which one your data actually needs.

May 25 2026 · 8′ · Tutorials · React · TypeScript

8′
May 20 2026

Why I Stopped Using useEffect to Sync State — and What I Use Instead

useEffect isn't broken — the mental model we teach with it is. I audited every useEffect in a React 19 codebase and found 4 concrete categories where it was an antipattern. Here are the patterns that replaced them: derived state, event handlers, use(), and Server Actions.

May 20 2026 · 7′ · Tutorials · React · TypeScript

7′
May 08 2026

Clipboard API Fails in TypeScript: The 4 Cases Nobody Documents and How I Found Them in reproducible example code

navigator.clipboard.writeText looks trivial until your app silently breaks in production with zero visible error. I found 4 cases the docs never mention: insecure context, lost focus, revoked permissions on iOS, and React timing. Here are the real patterns with copyable code.

May 08 2026 · 8′ · Tutorials · React · TypeScript

8′
Apr 08 2026

Your Accessibility Score Is Lying to Your Face

I scored 98/100 on Lighthouse and axe on juanchi.dev. Then I asked someone who actually uses a screen reader to try it. What happened next embarrassed me. A perfect score and a real experience are two completely different things.

Apr 08 2026 · 9′ · Experiments · React · frontend

9′
Apr 07 2026

I Ran Gemma in the Browser, No API Keys, and It Broke My Brain

There's a deeply embedded belief in the dev community about AI in production that's just wrong: that you need an API, a server, and a credit card to add intelligence to your app. I ran it in the browser. No cloud. No billing. And now I can't stop thinking about what this means.

Apr 07 2026 · 8′ · Experiments · React · nextjs

8′

Series

  • Open Data and Creativity2
  • Awesome Curated: The Tools11
  • Awesome Curated1
See all

Clusters

  • Software architecture
  • TypeScript in production
  • Security and operations
  • Agents and LLMs with judgment

Categories

  • Experiments99
  • Tutorials93
  • Opinion44
  • Reflections18
  • Technology8
  • History6

Tags

  • #TypeScript
  • #arquitectura
  • #nextjs
  • #railway
  • #java
  • #LLM
  • #postgresql
  • #ia
  • #prisma
  • #software-architecture
  • #firma-digital
  • #AI

Popular

  1. 01pnpm vs npm vs yarn vs bun: The Real Comparison Nobody Gives You in 2025
  2. 02Next.js App Router: The Guide I Wish I Had When I Migrated from Pages Router
  3. 03TypeScript: The Patterns I Actually Use Every Single Day
  4. 04Docker for Node.js Developers: From Zero to Production Without Losing Your Mind
  5. 05Your Digital Signing Cryptography Has an Expiration Date: What NIST Published and How to Migrate Your HSM

Newsletter

One email a week. What I'm learning, building, and breaking.

All
Experiments
Tutorials
Opinion
Reflections
Technology
History

Juanchi.dev is Juan Torchia’s public notebook — architecture, real systems and product decisions. Written and reviewed by hand in Buenos Aires. Built with Next.js, Prisma and PostgreSQL; deployed on Railway. No third-party trackers beyond aggregate analytics.

GitHubRSS© 2026 Juan Torchia · All rights reserved.

Real code. Unfiltered takes.

Architecture, real systems, product decisions and technical lessons. Everything reviewed with my own judgment before it ships.

230 articles published

Series

  • Open Data and Creativity2
  • Awesome Curated: The Tools11
  • Awesome Curated1
See all

Clusters

  • Software architecture
  • TypeScript in production
  • Security and operations
  • Agents and LLMs with judgment

Categories

  • Experiments99
  • Tutorials93
  • Opinion44
  • Reflections18
  • Technology8
  • History6

Tags

  • #TypeScript
  • #arquitectura
  • #nextjs
  • #railway
  • #java
  • #LLM
  • #postgresql
  • #ia
  • #prisma
  • #software-architecture
  • #firma-digital
  • #AI

Popular

  1. 01pnpm vs npm vs yarn vs bun: The Real Comparison Nobody Gives You in 2025
  2. 02Next.js App Router: The Guide I Wish I Had When I Migrated from Pages Router
  3. 03TypeScript: The Patterns I Actually Use Every Single Day
  4. 04Docker for Node.js Developers: From Zero to Production Without Losing Your Mind
  5. 05Your Digital Signing Cryptography Has an Expiration Date: What NIST Published and How to Migrate Your HSM

Newsletter

One email a week. What I'm learning, building, and breaking.

Blog
Uses
Now