Eu queria ver até onde conseguia chegar construindo um produto real, com a IA escrevendo a maior parte do código.
O FamigliApp é um app para a casa que está realmente no ar: tem usuários reais, cobra dinheiro, e o login precisa funcionar às 3h da manhã quando alguém adiciona leite à lista de compras.
✓ 1,150 commits em 46 dias
✓ 9 funcionalidades centrais do produto
✓ 10/10 email deliverability
"Percebi que muitas casas são desorganizadas: ninguém sabe ao certo para onde vai o dinheiro nem como as tarefas, os eventos e as despesas são coordenados. Isso gera uma carga mental que se distribui entre os membros da família."
Cada tela abaixo é a UI real do FamigliApp, tirada direto das rotas de produção. Clique em qualquer imagem para vê-la em tamanho completo.

O dashboard busca responder uma única pergunta: estamos bem? Mostra as tarefas pendentes, quanto gastamos neste mês, o que está por vir e o que está acabando, com as tarefas e as despesas compartilhadas lado a lado.

O inventário transforma o "onde foi que guardamos?" em uma lista pesquisável das coisas da casa, etiquetadas e localizadas, para que ninguém compre algo que já está no armário.
Toque na bolha. Pergunte qualquer coisa sobre a sua casa: despesas, o calendário compartilhado, o que está acabando.
O mordomo usa os mesmos dados do seu dashboard e responde na hora, em linguagem simples.
"O app funciona como um gerente da casa potencializado por IA, que torna mais fácil conviver sob o mesmo teto. Esse é o problema que o meu produto resolve."
Valor, categoria, quem pagou, como divide.
A folha de nova despesa foi feita para usar com uma mão só enquanto você está parado no caixa.
Se registrar uma despesa dá mais trabalho do que a despesa vale, as pessoas param depois da primeira tentativa.
A maior parte do trabalho aqui foi manter esse hábito vivo além da primeira semana. Deixar bonito foi secundário.
Com Claude Code, Figma MCP e outras ferramentas de IA no meu fluxo de design, a possibilidade de ir de uma ideia de design para algo que os usuários podem tocar e interagir é real. Tudo isso me ajuda a evitar tarefas manuais e dev handoffs, e a manter a visão completa de todo o projeto.



Um teste de $150 ao longo de 30 dias (de 30 de abril a 29 de maio), apontado para o beta aberto em espanhol. Orçamento pequeno, mas suficiente para aprender algo.
Cada barra é um dia de trabalho. O ritmo diminuiu de propósito perto do fim, conforme passei de construir o produto para poli-lo e montar a parte comercial: landings, SEO, billing, emails de reativação.
Um único funil para todos · Traduzir tudo mas manter um só gate · Dois locales, dois propósitos.
Testar o app com usuários reais da Argentina, enquanto compartilho uma versão em inglês para Hiring Managers.
Esses dois públicos querem coisas opostas, e um único funil compartilhado teria funcionado mal para ambos.
Manter a V2 e fazer A/B test de copy · Uma landing por campanha de ads · Sistema bento com cards reutilizáveis por persona.
Com o template bento, cada página de persona precisa usar as mesmas peças, então parei de acumular dívida de design.
Forçar cada persona a usar os mesmos componentes é a única razão pela qual o design se manteve gerenciável conforme cresceu.
Os emails de confirmação simplesmente não chegavam. Passei de 17 a 19 de maio desmontando a configuração de email e refazendo do zero.
Passei a enviar todos os meus emails transacionais por outra via, e troquei de um magic link para um código de 6 dígitos.
Eu tinha classificado isso como um bug menor, e na verdade estava impedindo as pessoas de se cadastrarem. Quase deixei para depois.
Lançar um produto é, na maior parte, não programar.
SEO, lançar em vários locales (beta aberto em espanhol e demo com cadastro em inglês),
Tudo isso é trabalho de design, e é o que decide se as pessoas ficam.
Termos, privacidade e tratamento de dados, billing, impostos, faturamento.
Esta é a parte que mais me dá curiosidade no longo prazo.
Uma arquitetura de tokens de três camadas. Os primitivos nunca tocam a UI: eles fluem para tokens semânticos, conscientes do tema, que são a única coisa que os componentes consomem. Mude um primitivo e todo o sistema se re-tematiza.
Cada cinza é o
Geist Fallback, ui-sans-serif, system-ui, sans-serif.Apenas três pesos, 400 / 500 / 600. A hierarquia vem do
O letter-spacing negativo escala com o tamanho:
O Primary carrega a característica
Dez blocos reutilizáveis compostos a partir dos primitivos acima. Uma gramática bento, cinco vozes de persona, zero layouts avulsos.
As seções respiram em
A acessibilidade está construída dentro dos tokens, não adicionada no final. O sistema mira
outline:0 nunca é usado sem um substituto.prefers-reduced-motion.Calculado com a fórmula de luminância relativa do WCAG. Meta AA (≥4.5:1 no body, ≥3:1 em texto grande), a maioria dos pares supera AAA (≥7:1).
Ainda é cedo, então prefiro encerrar com as perguntas em aberto em vez de uma volta olímpica. Continuo achando que estreitar o público para casais foi a decisão certa, mas ainda não provei que converte melhor.
O que eu quero fazer a seguir é medir bem o loop dos casais: onde as pessoas desistem nos fluxos de tarefas e despesas, e como ele se compara cara a cara com a versão anterior.
