A maioria dos tutoriais de chatbots em React para em uma demonstração. A resposta chega inteira depois de oito segundos, toda a conversa é reenviada ao modelo a cada turno, e a chave fica em uma variável NEXT_PUBLIC_ que o Next insere diretamente no bundle do navegador. Parece funcionar em uma captura de tela, mas desmorona na primeira semana de uso real.
Este é um guia de implementação, não um prompt de sistema. Você coloca o arquivo no seu projeto, abre com Claude Code ou Cursor, e ele trabalha na arquitetura com você: streaming com o leitor Fetch ReadableStream, um AbortController conectado para interromper, uma mensagem otimista do usuário com tokens anexados a ela, uma lista que não renderiza novamente cada balão a cada token, rolagem automática que para de brigar com quem rolou para cima, markdown e blocos de código, a chave protegida por um route handler, histórico no localStorage e depois em um backend real, além de um limite de tokens para o dia em que a conversa ficar longa.
Compre uma vez e ele será seu para guardar. Sem assinatura, sem dependência em tempo de execução e sem nada impedindo que você o reutilize no próximo projeto ou edite conforme sua base de código evolui.