Cookbook / Diário de voz
Um diário de voz
que lê a sua semana de volta

Captura de tela. O template rodando localmente.
- Modelos
- ink-whisper, sonic-3.6
- Idiomas
- Inglês
- Licença
- Apache-2.0
- Stack
- ExpoReact NativeExpo Router API routesAI SDKAsyncStorage
- Produtos da Cartesia
- InkSonic 3.6
O que ele faz
Um único app roda no iOS, no Android e na web. As entradas ficam no seu aparelho, então não há banco de dados nem login. As gravações vão para a Cartesia para transcrição, e as transcrições vão para o seu provedor de LLM. O app avisa isso embaixo do botão de gravar, e o servidor dele não guarda áudio.
Rode você mesmo
Instale
Rode os comandos abaixo com o Node 22.22 ou mais recente. O pnpm também funciona. Preencha o
.env.localcom base na tabela abaixo.Variáveis de ambiente - CARTESIA_API_KEY
play.cartesia.ai/keys- LLM_MODEL
provedor/modelo, por exemploopenai/gpt-5.4-mini- OPENAI_API_KEY
- Se
LLM_MODELcomeçar com openai/ - ANTHROPIC_API_KEY
- Se
LLM_MODELcomeçar com anthropic/ - AI_GATEWAY_API_KEY
- Para qualquer outro provedor
- TRUST_PROXY
- Opcional. 1 atrás do seu próprio proxy reverso
Grave uma entrada
Rode
npm run deve aperte w para abrir o app web. Para usar um celular, escaneie o QR code com o Expo Go, o app gratuito da Expo para testar projetos. Grave uma entrada com Start recording. Depois abra Recap e toque em Write my recap.
Crie com seu agente de programação
Um prompt que diz ao seu agente de programação por onde começar e o que ler primeiro.
Prompt
Build a voice journal app in Expo with Cartesia. Start from https:/ and follow its AGENTS.md for the commands, files and rules. Expo Router API routes hold the keys: /api/transcribe sends each recording to ink-whisper with client.stt.transcribe from @cartesia/cartesia-js, the AI SDK writes the title, mood, reflection and weekly recap, and /api/speak turns the recap into an MP3 with sonic-3.6 through client.tts.generate. Never give a key an EXPO_PUBLIC_ prefix. If I don't have a Cartesia API key yet, follow https:/ to get one.
Como funciona
Por que funciona assim
Uma gravação pronta não precisa de streaming
Uma entrada de diário é uma gravação pronta, então um único envio ao ink-whisper é mais simples que um fluxo ao vivo. O streaming também precisaria do áudio bruto enquanto você fala, e o gravador do Expo não entrega isso na web.
O resumo é escrito para ser ouvido
O resumo lê suas entradas dos últimos sete dias, da mais antiga para a mais nova, e sai com 120 a 200 palavras escritas para serem ouvidas. O Sonic 3.6 devolve o resumo como um MP3 que toca em todas as plataformas.
Deixe com a sua cara
Mude a voz padrão
A voz padrão fica em lib/limits.ts. Escolha outra na biblioteca de vozes da Cartesia e depois atualize a descrição dela em app/recap.tsx.
Transcreva outro idioma
Mude o idioma da transcrição em app/api/transcribe+api.ts. Depois mude o idioma da fala em app/api/speak+api.ts e escolha uma voz que fale esse idioma.
Mude os humores
A lista de humores fica em lib/schema.ts. Os prompts da reflexão e do resumo ficam em lib/server/prompts.ts.
Junte-se às equipes que estão migrando para a Cartesia
Perguntas
Minha API key fica segura em um app de celular?
Sim, desde que fique no servidor. As rotas de servidor do app leem a chave, e ela nunca vai para o app instalado nos celulares. Não dê a uma chave o prefixo EXPO_PUBLIC_, porque o Expo coloca esses valores no app, onde qualquer pessoa pode lê-los.
Funciona em um iPhone ou Android de verdade?
Sim, no Expo Go durante o desenvolvimento. Para uma versão de loja, você faz o deploy das rotas de servidor e aponta o app para elas. A versão web foi testada no Chrome, e as versões de celular compilam, mas não foram rodadas em um aparelho.
Posso publicar como está?
Não. As rotas de servidor estão abertas para qualquer pessoa, então adicione login e confira em cada rota antes do deploy. O limite de requisições embutido só freia abusos casuais.
É um app de terapia?
Não. Os prompts pedem ao modelo que não faça diagnósticos nem dê conselhos médicos. Se uma entrada falar de automutilação, o modelo sugere alguém de confiança ou uma linha de apoio local.
Posso usar a minha própria voz no resumo?
Não neste template. A clonagem de voz ficou de fora de propósito, então o app só usa vozes da biblioteca da Cartesia.
Existe um guia passo a passo deste template?
Sim. A receita explica o código, o README cobre a configuração, as variáveis de ambiente e a implantação, e a referência da API de transcrição em lote explica o lado da Cartesia.
Mais do cookbook
Comece hoje
Fale com um especialista.
Converse com alguém da nossa equipe e descubra como a Cartesia pode ajudar você a criar experiências de voz de alto nível.
Comece a criar.
Acesse nossos modelos por API e coloque um agente de voz em produção em minutos.

