Controle financeiro pessoal com IA, dashboard web e app Android.
Finanza AI é uma aplicação full-stack para organizar finanças pessoais, acompanhar gastos, controlar cartões, metas e orçamentos, além de usar IA para ajudar na análise financeira.
- Aplicação web: https://finanzaai.tech
- API: https://api.finanzaai.tech
- Repositório: https://github.com/SelmoCastro/financa_new
O projeto possui:
- API em NestJS.
- Web app em React + Vite.
- App Android em Expo/React Native.
- Banco PostgreSQL com Prisma.
- Recursos de IA para chat, insights, categorização e leitura de comprovantes.
- Dashboard financeiro com resumo mensal.
- Cadastro de receitas, despesas e transferências.
- Contas bancárias e cartões de crédito.
- Controle de faturas e compras parceladas.
- Categorias, orçamentos, metas e recorrências.
- Importação de extratos e comprovantes.
- Chat financeiro com IA.
- Insights e previsões financeiras.
- App mobile Android.
- Planos Free e Premium.
| Camada | Tecnologias |
|---|---|
| Backend | NestJS 11, Prisma 5, PostgreSQL, JWT |
| Frontend | React 19, Vite 6, TypeScript, Tailwind CSS 3 |
| Mobile | Expo SDK 54, React Native 0.81, NativeWind |
| IA | OpenRouter (Gemini 2.0 Flash) |
| Infra | Nginx, PM2, Docker |
- Node.js 22
- PostgreSQL — local ou Docker (
cd backend && docker-compose up -d) - OpenRouter API Key para funcionalidades de IA (obter em openrouter.ai)
git clone https://github.com/SelmoCastro/financa_new.git && cd financa_new
cd backend && npm install && cd ..
cd frontend && npm install && cd ..
cd mobile && npm install && cd ..Copie o arquivo de exemplo e ajuste os valores:
cp backend/.env.example backend/.envEdite backend/.env com suas credenciais:
| Variável | Obrigatória | Descrição |
|---|---|---|
DATABASE_URL |
Sim | Conexão com PostgreSQL |
JWT_SECRET |
Sim | Chave para assinar tokens JWT |
OPENROUTER_API_KEY |
Não (IA opcional) | Chave da API OpenRouter |
FRONTEND_URL |
Sim | URL do frontend (local: http://localhost:5173; produção: https://finanzaai.tech) |
MERCADOPAGO_ACCESS_TOKEN |
Para pagamentos | Access Token configurado somente no ambiente de execução |
MERCADOPAGO_WEBHOOK_SECRET |
Para pagamentos | Segredo para validar webhooks do Mercado Pago |
cd backend
npx prisma generate
npx prisma db push # ou: npx prisma migrate devcd backend && npm run start:dev # API em http://localhost:3000
cd frontend && npm run dev # Web em http://localhost:5173
cd mobile && npx expo start # App mobileFinanca_new/
├── backend/ # API NestJS + Prisma
├── frontend/ # Web app React + Vite
├── mobile/ # App Android Expo
└── README.md
cd backend
npm install
npx prisma generate
npx prisma db push
npm run start:devcd frontend
npm install
npm run devcd mobile
npm install
npx expo startO projeto usa autenticação JWT, refresh token, validação de DTOs, proteção CSRF, headers de segurança, controle de acesso por usuário e cuidados para evitar vazamento de dados sensíveis em logs.
Arquivos de ambiente, builds, APKs, chaves privadas e artefatos temporários não devem ser enviados ao repositório.
| Local | Script | Descrição |
|---|---|---|
| raiz | npm run release:patch |
Atualiza versão patch |
| backend | npm run build |
Build da API |
| backend | npm run start:dev |
API em desenvolvimento |
| frontend | npm run build |
Build do frontend |
| frontend | npm run dev |
Frontend em desenvolvimento |
| mobile | npx expo start |
App mobile em desenvolvimento |
| mobile | npx expo-doctor |
Valida configuração Expo |
Antes de publicar alterações importantes:
cd backend && npm run build
cd ../frontend && npm run build
cd ../mobile && npx expo-doctorFeito com ❤️ por Selmo Castro