ISR: páginas estáticas que se atualizam sozinhas
Um site estático é rápido porque a página já está pronta quando o leitor chega. O problema é atualizar: tradicionalmente, publicar um texto novo exigia gerar o site inteiro de novo. A Regeneração Estática Incremental (ISR) resolve isso página por página.
Como funciona
O primeiro acesso a uma página a renderiza no servidor e guarda o resultado em cache.
Os acessos seguintes recebem a cópia pronta, sem renderizar nada.
Quando o conteúdo muda, a cópia é descartada e a próxima visita gera uma nova.
Por tempo ou sob demanda
Há duas formas de dizer quando a cópia expira. Por tempo, com export const revalidate = 60, a página é refeita no máximo a cada 60 segundos. Sob demanda, o próprio sistema avisa que algo mudou:
import { revalidatePath } from 'next/cache'
export async function publicar(slug: string) {
// ...grava o artigo no banco...
revalidatePath('/') // a home lista o artigo
revalidatePath(`/${slug}`) // a página do próprio artigo
}
Para um blog, a revalidação sob demanda costuma ser a melhor escolha: a página fica em cache indefinidamente e só é refeita quando alguém de fato publica ou edita.
O cuidado que não aparece no tutorial
Uma página não vive só na própria URL. Um artigo aparece na home, nas páginas de categoria, no RSS e no sitemap. Invalidar só a página do artigo deixa essas outras rotas desatualizadas, e é justamente delas que dependem a indexação e a distribuição.

