Duofund
БесплатноНе проверенFinanças a dois, sem complicação. App de finanças para casais com escopo pessoal e compartilhado — Laravel 12 + Livewire Volt.
Описание
Finanças a dois, sem complicação. App de finanças para casais com escopo pessoal e compartilhado — Laravel 12 + Livewire Volt.
README
DuoFund
Finanças a dois, sem complicação.
Um app de finanças pessoais para casais, onde cada um enxerga o próprio dinheiro e os dois enxergam o dinheiro do casal — sem misturar as duas coisas.

O problema
App de finanças para casal costuma escolher um dos dois extremos: ou tudo é compartilhado — e você perde a privacidade do seu dinheiro — ou nada é, e a conta conjunta vira uma planilha à parte.
O DuoFund resolve com escopo. Toda transação, categoria, meta, cartão e desejo nasce em uma de duas visões:
Meu dinheiro (personal) |
Só você vê |
Nosso dinheiro (shared) |
Os dois veem, com o nome de quem lançou |
A visão ativa persiste entre as páginas, e um mesmo modelo nunca vaza de uma para a outra. Quando você registra uma receita compartilhada, o app cria automaticamente a despesa espelho "Transferido para conta conjunta" na sua conta pessoal — porque aquele dinheiro saiu de você e entrou no bolo comum.
Telas
![]() Painel — resumo do mês, orçamento por categoria e alerta de estouro |
![]() Transações — entradas e saídas agrupadas por data |
![]() Orçamento — limite por categoria com progresso |
![]() Relatório — comparativo com o mês anterior, export CSV e PDF |
![]() Metas — progresso, ritmo de poupança e previsão |
![]() Desejos — lista com prioridade e simulador de compra |
No celular (o app é mobile-first)
O que faz
- Transações com receita, despesa e reserva; recorrentes e parceladas
- Orçamento por categoria, com aviso no painel a partir de 80% do limite
- Metas com plano por valor mensal ou por data-alvo, e previsão de conclusão comparada ao ritmo real
- Cartões e agrupamento de parcelas futuras
- Lista de desejos com prioridade e simulador de "cabe no meu mês?"
- Relatório mensal com comparativo contra o mês anterior, export CSV (abre certo no Excel pt-BR) e PDF
- Convite do parceiro por link assinado
- PWA instalável, com 2FA opcional
Converse com suas finanças pelo Claude
O projeto inclui um servidor MCP que expõe a conta para assistentes de IA. Na prática, dá para perguntar "quanto gastei com mercado esse mês?" ou dizer "lança 80 reais de farmácia" direto no Claude.
São 14 ferramentas cobrindo resumo, categorias, metas, transações e desejos —
todas respeitando o mesmo escopo personal/shared do app.
// .claude/mcp.json
{
"mcpServers": {
"duofund": {
"command": "node",
"args": ["./mcp/server.js"],
"env": {
"DUOFUND_URL": "https://seu-dominio",
"DUOFUND_TOKEN": "seu-token"
}
}
}
}
A API por trás fica em /api/mcp/*, autenticada por bearer token com
hash_equals e limitada a 60 requisições por minuto.
Stack
| Backend | PHP 8.2+, Laravel 12, Livewire Volt, Fortify |
| Frontend | Tailwind CSS 4, Alpine.js, Lucide (SVG server-side) |
| Build | Vite 7 |
| Banco | MySQL 8 |
| Testes | Pest 4 · PHPStan/Larastan nível 5 |
Nenhuma página faz requisição para fora: fontes, ícones e JS são todos servidos pelo próprio domínio.
Rodando localmente
git clone [email protected]:jeffersonrucu/duofund.git
cd duofund
cp .env.example .env
docker compose up -d
docker compose exec laravel.test composer install
docker compose exec laravel.test php artisan key:generate
docker compose exec laravel.test php artisan migrate --seed
docker compose exec laravel.test npm ci && npm run build
Acesse http://localhost:8080.
Para ver o app com dados de demonstração (é o que aparece nas telas acima):
docker compose exec laravel.test php artisan db:seed --class=TestDataSeeder
Entre com [email protected] / password.
Testes e qualidade
docker compose exec laravel.test php artisan test # 143 testes
docker compose exec laravel.test composer analyse # PHPStan nível 5
docker compose exec laravel.test composer check # os dois
Alguns testes existem por motivos específicos que valem menção:
NoLazyLoadingTestrenderiza todas as páginas com dados nos dois escopos.Model::preventLazyLoading()só arma o guard em resultado com mais de uma linha, então página vazia não acusa N+1 nenhum.PageSmokeTestrenderiza as 16 páginas que servem HTML. Como os ícones são SVG resolvidos em tempo de render, um nome errado vira exceção — não um espaço em branco silencioso.MonthNavigationTestataca a URL com valores inválidos:viewecurrentMonthsão estado exposto na query string.
Deploy
git push na master dispara a esteira em .github/workflows/ci.yml:
- Testes e PHPStan no PHP 8.3 (o Pest 4 exige
^8.3) composer install --no-devno PHP 8.2, a versão do servidor — se alguma dependência de produção exigir mais que isso, o build falha aqui em vez de derrubar o sitersyncda aplicação e dovendor, migrations e recache- Verificação de que o site respondeu 200
O vendor de produção é construído sem dependências de desenvolvimento de
propósito: o Pest exige PHP ^8.3 e elevaria o piso de versão do servidor
mesmo sem nunca rodar lá.
Backup do banco roda por cron (scripts/backup-db.sh), em shell puro — em
hospedagem compartilhada o proc_open costuma vir bloqueado, o que inviabiliza
as soluções que chamam o mysqldump pelo PHP.
Estrutura
app/
├── Enums/PaymentMethod.php # pix, cartão, boleto — rótulo e ícone juntos
├── Livewire/Concerns/ # navegação de mês e alternância de escopo
├── Models/Concerns/ScopedToView.php # o filtro personal/shared, em um lugar só
├── Services/
│ ├── TransactionMirrorService.php # a despesa espelho da receita compartilhada
│ └── MonthlySummaryService.php # fonte única dos totais do mês
└── Support/Money.php # entrada em pt-BR → decimal
resources/views/livewire/pages/ # as telas, em Livewire Volt
mcp/server.js # servidor MCP
Licença
Ainda não definida — sem uma licença explícita, todos os direitos são reservados.
Установка Duofund
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/jeffersonrucu/duofundFAQ
Duofund MCP бесплатный?
Да, Duofund MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Duofund?
Нет, Duofund работает без API-ключей и переменных окружения.
Duofund — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Duofund в Claude Desktop, Claude Code или Cursor?
Открой Duofund на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Stripe
Payments, customers, subscriptions
автор: Stripemalamutemayhem/unclick-agent-native-endpoints
110+ tools for AI agents spanning social media, finance, gaming, music, AU-specific services, and utilities. Zero-config local tools plus platform connectors. n
автор: malamutemayhemwhiteknightonhorse/APIbase
Unified API hub for AI agents with 56+ tools across travel (Amadeus, Sabre), prediction markets (Polymarket), crypto, and weather. Pay-per-call via x402 micropa
автор: whiteknightonhorsetrackerfitness729-jpg/sitelauncher-mcp-server
Deploy live HTTPS websites in seconds. Instant subdomains ($1 USDC) or custom .xyz domains ($10 USDC) on Base chain. Templates for crypto tokens and AI agent pr
embeddedlayers/mcp-analytics
Statistical analysis, forecasting, and ML for business data (Shopify, Stripe, WooCommerce, eBay, GA4, Search Console). Upload a CSV or connect live data sources
автор: embeddedlayerscarrierone/verilexdata-mcp
20 structured datasets (NPI healthcare, SEC filings, OFAC sanctions, crypto whales, Polymarket signals, patents, economic indicators) via x402 pay-per-query wit
автор: carrieronetipdotmd/tip-md-x402-mcp-server
MCP server for cryptocurrency tipping through AI interfaces using x402 payment protocol and CDP Wallet.
автор: tipdotmdlaundromatic/shopgraph
Structured product data from the open web — Schema.org + AI extraction for e-commerce enrichment. Pay per call via Stripe. [shopgraph.dev](https://shopgraph.dev
автор: laundromaticmrslbt/xendit-mcp
Xendit payment gateway for Southeast Asia. Invoices, disbursements, balance checks, and bank transfers across Indonesia, Philippines, Thailand, Vietnam, and Mal
автор: mrslbt@arbitova/mcp-server
Non-custodial on-chain escrow + AI dispute arbitration for agent-to-agent USDC payments on Base. Seven tools covering the full EscrowV1 contract surface: create
автор: jiayuanliang0716-maxCompare Duofund with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории finance






