Executando Chef Claude localmente
Use esta página para executar o projeto de receitas do Chef Claude extraído do Learn React no seu computador. Você adapta a chave do provedor usada pelo seu app Vite, instala as dependências React antigas que ele declara e gera uma receita localmente. Se o lado React do projeto for novo para você, o manual React começa do zero.
O que você precisa primeiro
Instale uma versão LTS suportada do Node.js. A versão 24 é recomendada e inclui npm.
Verifique que ambos os comandos funcionam:
$ node --version
v24.18.0
$ npm --version
11.18.0Você também precisa de uma chave de API para o provedor que usa. O código do curso inclui uma rota Anthropic e uma rota Hugging Face. O cadastro do provedor, disponibilidade de modelos e preços podem mudar, então use as instruções de conta atuais do provedor. Qualquer que seja a rota escolhida, use uma chave temporária com um limite de gastos baixo; o projeto chama o provedor a partir do código do navegador.
Abra a pasta do projeto
Abra um terminal na pasta Chef Claude extraída que contém package.json:
$ cd path-to-your-downloaded-projectAntes de executar qualquer coisa, abra package.json. Seu bloco scripts mostra os comandos que o projeto espera, e dependencies registra os pacotes exatos React e do provedor contra os quais este snapshot foi construído.
package.json; cada comando e arquivo nesta página pertence lá. Se um comando informar que um arquivo está faltando, verifique em qual pasta o terminal está antes de mudar qualquer outra coisa. Erros causados pela pasta errada me deixaram preso por horas quando comecei! Faça as variáveis de ambiente funcionarem no Vite
O editor da Scrimba entende process.env.ANTHROPIC_API_KEY e process.env.HF_ACCESS_TOKEN. Um app Vite local não fornece esse objeto process.env no navegador.
Abra ai.js e altere o valor Anthropic de:
apiKey: process.env.ANTHROPIC_API_KEY,para:
apiKey: import.meta.env.VITE_ANTHROPIC_API_KEY,Altere o valor Hugging Face de:
const hf = new HfInference(process.env.HF_ACCESS_TOKEN)para:
const hf = new HfInference(import.meta.env.VITE_HF_ACCESS_TOKEN)O prefixo VITE_ é obrigatório porque o Vite expõe apenas variáveis de ambiente especialmente prefixadas ao código do navegador.
Substitua o modelo Anthropic descontinuado
A função Anthropic baixada usa o modelo descontinuado claude-3-haiku-20240307. Na função getRecipeFromChefClaude, altere:
model: "claude-3-haiku-20240307",para a substituição documentada da Anthropic:
model: "claude-haiku-4-5-20251001",O resto da solicitação do curso pode permanecer inalterado.
Adicione suas chaves ao .env
Crie .env ao lado de package.json. Adicione o valor para a rota que você usa:
VITE_ANTHROPIC_API_KEY=your-anthropic-key-here
VITE_HF_ACCESS_TOKEN=your-hugging-face-token-hereVocê pode omitir o valor não usado. O projeto chama getRecipeFromChefClaude por padrão, então se deixar essa função como está, você precisa do valor Anthropic e da mudança de modelo acima. Para usar a rota Hugging Face, que chama um modelo Mistral, siga a lição de comutação de provedor do curso e confirme que seu modelo Hugging Face ainda está disponível.
Crie .gitignore ao lado de package.json e adicione:
.env
node_modules/Manter .env fora do Git é tão importante quanto a exposição do navegador descrita no aviso abaixo, porque uma chave que chega ao histórico do repositório fica lá mesmo depois que você deleta o arquivo. O manual Git cobre o hábito mais amplo em ignorando arquivos e boas práticas.
Estas chaves são visíveis no navegador
O prefixo VITE_ deliberadamente coloca cada valor no bundle do frontend. Use credenciais temporárias e restritas apenas para aprendizado local. Nunca implante ou compartilhe esta versão, e nunca faça commit de .env. Uma versão de produção precisa de um backend ou função serverless que mantenha as credenciais do provedor no servidor.
ai.js, adicione a chave que usa ao .env, e mantenha esse arquivo fora do Git. A chave permanece visível no navegador. Instale e execute o projeto
O projeto extraído usa uma versão pré-lançamento do React 19 junto com uma dependência cuja faixa de peer não aceita esse pré-lançamento. Um npm install normal, portanto, para com um erro ERESOLVE. Instale este snapshot do curso com sua verificação de peer relaxada:
$ npm install --legacy-peer-deps
$ npm startO Vite imprime um endereço local semelhante a:
VITE ready
Local: http://localhost:5173/Abra a URL Local exata. Se 5173 estiver ocupado, o Vite escolhe outra porta e a imprime. Adicione ingredientes suficientes para solicitar uma receita. Uma receita renderizada confirma duas coisas: a página local funciona e a chave do provedor selecionado e o modelo funcionam. Interrompa o projeto com Ctrl+C.
Reinicie o Vite após alterar .env.
npm install --legacy-peer-deps, depois npm start e abra a URL Local que ele imprime. Pressione Ctrl+C quando quiser interrompê-lo. A flag parece um aviso, e ainda é a escolha correta para este projeto, então use-a sem pensar que quebrou algo. Solução de problemas
ERESOLVE unable to resolve dependency tree: Use npm install --legacy-peer-deps para este projeto extraído. Não delete ou substitua pacotes React para passar pela instalação.
process is not defined: Um ou ambos os valores process.env no estilo Scrimba permanecem em ai.js. Substitua-os pelas formas import.meta.env.VITE_... mostradas acima, depois reinicie o Vite.
A chave é undefined ou a autenticação falha: Verifique o nome exato da variável VITE_, certifique-se de que .env está ao lado de package.json, e reinicie o projeto. Confirme se a credencial está ativa na conta do provedor.
Anthropic diz que o modelo não foi encontrado ou está descontinuado: Confirme que ai.js usa claude-haiku-4-5-20251001, não claude-3-haiku-20240307. Se Anthropic descontinuar a substituição mais tarde, use o sucessor nomeado em sua documentação atual de descontinuação de modelo.
Hugging Face rejeita o modelo Mistral: Confirme que o modelo em ai.js está disponível através do provedor de inferência conectado à sua conta. Uma página de modelo pode permanecer baixável mesmo quando não está disponível através de seu provedor de inferência hospedada escolhido.
Se você quiser publicar esta página: Não publique esta versão apenas de frontend. Mova a solicitação de IA e a credencial para um backend primeiro.
ERESOLVE, substitua cada leitura de chave antiga quando você vê process is not defined, e reinicie o projeto após editar .env. A maioria desses erros descreve a correção dentro da própria mensagem. Leia a mensagem inteira antes de mudar qualquer coisa, o que levou muito tempo para eu aprender! 
