O Zuno é uma aplicação completa (monorepo) projetada para centralizar a vida financeira de um investidor. O objetivo é agregar dados de corretoras e bourses para fornecer uma visão holística e unificada do seu patrimônio.
- Visão em Tempo Real: Desempenho do portfólio, análise de alocação de ativos e histórico de pagamentos de dividendos.
- Gestão Simplificada: Interface limpa e minimalista com painéis e gráficos interativos.
- Market Data Isolado: Microserviço dedicado (FastAPI) extraindo dados da B3 (Ações, FIIs) e Criptomoedas sob demanda.
| Aplicação | Escopo | Diretório |
|---|---|---|
| API | Backend transacional. Trata os usuários, carteiras, ativos (CRUD) e transações (Spring Boot). | apps/api/ |
| Market | Microserviço proxy de dados em Python. Busca informações em tempo real via yfinance. | apps/market/ |
| Web | UI focada no usuário final e projeção de dados através de Server Components. | apps/web/ |
O projeto já contém os scripts necessários no diretório raiz para orquestrar todas as camadas do sistema de uma vez apenas.
- Java 21+, Node.js 22+, Python 3.13+
- Docker para lidar com os serviços acessórios
- uv instalado globalmente (
pip install uv)
git clone https://github.com/ilanzgx/zuno-app.git
cd zuno-app
# Instale as dependências unificadas de script (npm)
npm install
# Suba os containers locais
docker-compose -d up
# Crie as variáveis de ambiente em apps/api/.env e apps/web/.env.development
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env.developmentBasta rodar o comando abaixo na raiz do repositório para inicializar o Next.js, o servidor Spring Boot e o Uvicorn do FastAPI:
npm run devSe você tiver uma sugestão para melhorar o projeto, por favor faça um fork do repositório e crie um pull request. Você também pode simplesmente abrir uma issue!
Lançado sob a GNU Affero General Public License v3.0 (AGPLv3) — Ver detalhes.
Construído com ❤️ por Ilan Fonseca