De Novai para TAMSIV: renomear uma aplicação sozinho
Pontos-chave a reter: Renomear uma aplicação inteira (monorepo, pacote Android, deep links, backend, configurações) é um trabalho massivo — 847 linhas modificadas em 73 arquivos. A chave: proceder por camadas (pacote Android primeiro, depois configurações, depois código-fonte, depois comentários), testar cada camada antes de passar para a próxima, e, acima de tudo, não adiar essa decisão. Quanto mais você espera, mais doloroso é.
Existem decisões que adiamos por semanas. Renomear uma aplicação inteira é uma delas. Mas no final de novembro de 2025, entendi que Novai precisava morrer para que TAMSIV nascesse. O nome não funcionava, o produto merecia algo melhor, e cada dia de atraso tornava o trabalho maior.
Aqui está o relato completo desse rebranding solo — do brainstorming inicial ao commit final.
Por que o nome Novai não funcionava?
Novai era para evocar "nova IA". Em teoria, funcionava. Na prática, ninguém fazia a conexão. O feedback era unânime:
- Genérico: "Novai" se parece com dezenas de outros produtos de tecnologia. Tente pesquisar "Novai" no Google — você encontrará consultorias, startups de IA, softwares SaaS. Impossível se destacar.
- Não memorável: o nome não diz nada sobre o produto. Um aplicativo de produtividade por voz? Um chatbot? Uma ferramenta de dados? Novai poderia ser qualquer coisa.
- Sem história: um bom nome conta algo. Novai não conta nada.
Eu precisava de um nome que carregasse o conceito. Não apenas um som agradável — um nome que fosse, por si só, um pitch.
Como o nome TAMSIV nasceu?
TAMSIV é um acrônimo: Tarefas Assistidas por Memos Sincronizados, Inteligência Vocal. Cada letra descreve uma funcionalidade:
- TA — Tarefas: o coração do aplicativo, o gerenciamento de tarefas
- M — Memos: as notas de voz estruturadas pela IA
- S — Sincronizados: a dimensão colaborativa e multi-dispositivo
- IV — Inteligência Vocal: a voz como interface principal
O nome É o pitch. Em 6 letras, você sabe o que o aplicativo faz. Isso é o que chamamos de nome descritivo — em oposição a nomes evocativos (como Apple) ou arbitrários (como Kodak).
Vantagem adicional: "TAMSIV" é único. Zero resultados no Google antes do lançamento. O SEO começa do zero, mas pelo menos não há concorrência no termo. Para um desenvolvedor solo, isso é crucial — sem orçamento de publicidade para superar um homônimo.
Como planejar uma renomeação em um monorepo?
O monorepo TAMSIV tem três componentes: frontend/ (React Native), backend/ (Node.js/Express) e website/ (Next.js). Mais de 400 arquivos continham "novai" em diferentes formas: novai, Novai, NOVAI, novai://, com.novai.
Eu procedi por camadas, da mais crítica para a menos crítica:
- Camada 1 — Pacote Android:
com.novai→com.tamsiv. Esta é a fundação. Se quebrar, nada mais compila. - Camada 2 — Arquivos de configuração:
build.gradle,package.json,.env, configurações do Firebase, URL do Supabase. - Camada 3 — Código-fonte: imports, referências, nomes de serviços, endpoints.
- Camada 4 — Comentários e docs: README, CHANGELOG, comentários no código.
Cada camada era testada individualmente antes de passar para a próxima. Isso evita o cenário de pesadelo: 400 arquivos modificados de uma vez, uma build que falha e nenhuma ideia de qual mudança causou o problema.
Quais são as armadilhas técnicas de uma renomeação Android?
O build.gradle do Android usa o nome do pacote em seis lugares diferentes:
applicationId— o identificador único na Play Storenamespace— o namespace Java/Kotlin para a geração de códigomanifestPlaceholders— as variáveis injetadas no AndroidManifest.xmlsigningConfigs— a configuração de assinatura (keystore)resValue— os recursos injetados na compilaçãobuildConfigField— as constantes de build
Esquecer um único, e a build falha com uma mensagem de erro críptica. Verifiquei cada ocorrência manualmente.
Os deep links são outra armadilha. TAMSIV usa o esquema tamsiv:// para links de indicação (tamsiv://invite/{code}). Antes da renomeação, era novai://. A migração deve ser limpa — sem período de transição onde os dois esquemas coexistem, isso cria confusão.
Como gerenciar a renomeação no backend e na infraestrutura?
O backend não é poupado:
- Logs: cada log continha "Novai" como prefixo. Migração para "TAMSIV".
- Mensagens de erro: as mensagens visíveis para o usuário ("Bem-vindo ao Novai") devem corresponder ao novo nome.
- Variáveis de ambiente:
NOVAI_DB_URL→TAMSIV_DB_URL(mesmo que tecnicamente não mude nada, a legibilidade importa). - Railway: o serviço chamava-se "novai-backend". Renomeação no painel do Railway.
- Supabase: o projeto permaneceu o mesmo (as URLs do Supabase não mudam), mas os comentários nas migrações referenciavam "Novai".
No lado do site, o trabalho foi semelhante: meta tags, Open Graph, rodapé, avisos legais, termos de uso, política de privacidade — tudo o que mencionava "Novai" teve que ser alterado para "TAMSIV".
Como verificar se nenhuma referência foi esquecida?
Após a renomeação, executei um grep -ri "novai" . em todo o repositório. Resultado: zero ocorrências. Esta é a única maneira de ter certeza.
Mas o grep não é suficiente. Também é preciso:
- Build Android completo:
gradlew assembleDebuge depoisgradlew assembleRelease - Testes de backend:
npm testpara verificar se os endpoints funcionam - Build do site:
npm run buildpara verificar se o Next.js compila sem erros - Teste dos deep links: verificar se
tamsiv://invite/testabre o aplicativo corretamente - Firebase: verificar se o
google-services.jsoncorresponde ao novo pacote
Fiz tudo em ordem. A build do Android falhou na primeira tentativa — um import com.novai.BuildConfig esquecido em um arquivo Java gerado. Corrigido, rebuild, OK.
Que impacto uma renomeação tem na Play Store?
Mudar o applicationId significa criar uma nova aplicação na Play Store. Este é o ponto mais importante a entender: o Google identifica os aplicativos pelo seu applicationId, não pelo seu nome. com.novai e com.tamsiv são dois aplicativos diferentes aos olhos da loja.
Consequências:
- As avaliações e comentários recomeçam do zero
- As instalações não são transferidas
- Os usuários existentes precisam reinstalar (ou você gerencia uma migração no lado do servidor)
Para TAMSIV, isso era aceitável — o aplicativo estava em alfa com alguns testadores. Se você tem milhares de usuários, pense muito seriamente antes de mudar o applicationId. Você pode mudar o nome exibido sem tocar no pacote.
Que lições tirar deste rebranding?
Aqui estão as lições que tiro, após 847 linhas modificadas em 73 arquivos:
- Faça cedo: quanto mais você espera, mais doloroso é. Se o seu nome te incomoda depois de 3 meses, ele ainda te incomodará em um ano — com 10x mais arquivos para modificar.
- Um bom nome é um investimento: um nome que conta sobre o seu produto é marketing gratuito. TAMSIV se vende sozinho na explicação.
- Prossiga por camadas: do mais crítico ao menos crítico. Teste cada camada. Não faça um mega-commit de 400 arquivos.
- Grep é seu amigo: um
grep -rifinal é obrigatório. O olho humano erra coisas, o regex não. - Zero funcionalidade nova: aceite que este dia não produz nada visível para o usuário. É dívida técnica paga antecipadamente.
Como escolher um bom nome para o seu aplicativo?
Se você está na fase de escolha do nome, aqui estão meus critérios:
- Pesquisável no Google: o nome deve ser único. Digite-o no Google antes de se comprometer.
- Pronunciável: se as pessoas não conseguem dizê-lo em voz alta, elas não o recomendarão.
- Descritivo ou memorável: ou o nome descreve o produto (TAMSIV), ou é tão único que fica na cabeça (Spotify).
- Disponível: domínio, pacote Android, nome de usuário nas redes sociais. Verifique tudo antes de escolher.
- Curto: idealmente, no máximo 6 letras. Acima disso, torna-se difícil de lembrar e digitar.
Ferramentas como Namelix ou NameMesh podem ajudar no brainstorming, mas a decisão final é sempre humana. Meu conselho: peça a 5 pessoas para repetirem o nome depois de ouvi-lo apenas uma vez. Se 4 de 5 o retiverem, é um bom sinal.
A renomeação mudou algo para o produto?
Sim, e não apenas tecnicamente. Ter um nome que faz sentido mudou a minha forma de falar sobre o produto. Em build in public, quando digo "TAMSIV — Tarefas Assistidas por Memos Sincronizados, Inteligência Vocal", as pessoas entendem imediatamente. Com "Novai", eu sempre tinha que explicar.
A jornada de mais de 650 commits do TAMSIV é inseparável desta decisão. A renomeação não é um detalhe técnico — é um momento fundador. O aplicativo encontrou sua identidade naquele dia.
Um dia para zero funcionalidade nova. Mas TAMSIV finalmente tinha seu nome.
FAQ
Quanto tempo leva uma renomeação completa de aplicativo?
Para TAMSIV (monorepo com frontend React Native, backend Node.js e website Next.js), levou um dia completo. O volume: 847 linhas modificadas em 73 arquivos. O tempo depende principalmente do número de componentes e do tamanho do codebase.
É possível renomear um aplicativo já publicado na Play Store?
Você pode mudar o nome exibido (título) sem problemas. Mas mudar o applicationId (com.example.app) cria um novo aplicativo aos olhos do Google. As avaliações, instalações e classificação não são transferidas. Para um aplicativo em produção com milhares de usuários, raramente é recomendado.
É preciso um acrônimo para um bom nome de aplicativo?
Não, é uma escolha entre outras. O acrônimo funciona quando cada letra tem um significado claro e a palavra resultante é pronunciável. "TAMSIV" passa nesse teste. Mas nomes como "Notion" ou "Linear" também funcionam muito bem sem serem acrônimos.
Como evitar quebrar links existentes após uma renomeação?
Se você tem deep links, links compartilhados ou códigos QR em circulação com o esquema antigo, você deve manter um redirecionamento temporário. Para URLs da web, um redirecionamento 301 resolve. Para deep links móveis, você pode declarar os dois esquemas no manifesto durante um período de transição.
O rebranding impacta o SEO?
Para o site, sim. Se você mudar de domínio, precisa de redirecionamentos 301 limpos e avisar o Google via Search Console. Se você mantiver o mesmo domínio (como TAMSIV), o impacto é mínimo — basta atualizar as meta tags e o conteúdo. O novo nome será indexado em alguns dias.