Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Loading the full README. The saved excerpt is shown below.
App de análise quantitativa de apostas (Poisson, Elo, Monte Carlo, Kelly) com leitor de imagens por IA (OCR via Claude Vision). 1. Rodar localmente (para testar antes de publicar) Pré-requisito: ter o Node.js instalado (baixe em https://nodejs.org, versão LTS). Isso abre o app em http://localhost:5173 no seu navegador. Aqui, com o app rodando fora do sandbox do Claude, o seletor de arquivos e a câmera já funcionam normalmente. 2. Publicar no Vercel (deixa o app com uma URL pública) Opção A — Mais simples (sem GitHub), usando a CLI do VercelRead the full README ↗
App de análise quantitativa de apostas (Poisson, Elo, Monte Carlo, Kelly) com leitor de imagens por IA (OCR via Claude Vision).
Pré-requisito: ter o Node.js instalado (baixe em https://nodejs.org, versão LTS).
No terminal, dentro desta pasta:
npm install
npm run dev
Isso abre o app em http://localhost:5173 no seu navegador. Aqui, com o app rodando fora do sandbox do Claude, o seletor de arquivos e a câmera já funcionam normalmente.
npm install -g vercel
vercel
https://quant-system-predictor.vercel.app). Essa é a versão de teste
(preview).vercel --prod
git init
git add .
git commit -m "Quant System Predictor 8.0"
git branch -M main
git remote add origin https://github.com/SEU_USUARIO/NOME_DO_REPO.git
git push -u origin main
git push, a Vercel atualiza o site
sozinha (deploy automático).Importante: só o front-end (a parte visual, dist/) vai pro Firebase Hosting.
As 12 funções em api/*.js (Supabase, API-Football, OCR, etc.) e os crons
(vercel.json) continuam rodando no Vercel — Firebase Hosting só serve
arquivos estáticos, não roda esse código de servidor. Por isso o front-end
compilado pro Firebase precisa saber a URL do Vercel pra chamar a API
(src/utils/apiUrl.js cuida disso, lendo VITE_API_BASE_URL).
npm install -g firebase-tools
firebase login
.env ou .env.local (não commitado) com
VITE_SUPABASE_URL e VITE_SUPABASE_KEY — os mesmos usados em npm run dev.
Sem isso o build quebra em runtime (o app não consegue falar com o Supabase).npm run deploy:firebase
Isso builda com .env.firebase (define VITE_API_BASE_URL pro domínio de
produção do Vercel, https://quant-predictor.vercel.app) e publica o
dist/ no projeto Firebase configurado em .firebaserc (agilsgh-65463878-f64e7).*.web.app / *.firebaseapp.com) e localhost:5173 — ver
api/_lib/cors.js. Se depois você apontar um domínio próprio pro Firebase
Hosting, adicione-o na variável de ambiente CORS_EXTRA_ORIGINS no painel
do Vercel (aceita lista separada por vírgula) e faça redeploy das funções.Diferente do Firebase (passo 3), aqui front-end E as 12 funções de api/*.js
rodam juntos, no mesmo servidor e no mesmo domínio (server/app.js reúne
tudo num app Express só). Vantagens práticas: não existe limite de "12
funções serverless" (é um servidor único, não funções separadas) e a
navegação fica mais fluida — o navegador nunca precisa sair do domínio da
AWS pra chamar a API, então não depende de CORS liberado noutro domínio.
Você não precisa saber nada de AWS de antemão — o passo a passo abaixo
cobre desde criar a conta até publicar. É mais longo que o Vercel porque a
AWS não tem um comando único tipo vercel. Tem dois jeitos de publicar (veja
o passo 4.3): pelo Console no navegador (sem instalar nada, sem digitar
chave secreta — melhor se você está num computador público/compartilhado) ou
pela linha de comando (mais rápido pra atualizar com frequência, mas só
recomendado no seu próprio computador).
A AWS não deixa fazer login "pela linha de comando" com o e-mail/senha da conta — precisa de um usuário IAM com uma chave de acesso (o equivalente a usuário+senha, só que pra ferramentas). É isso que "configurar permissões e chaves" quer dizer, na prática:
This is the beginning of the README. Read the rest at the original. Read the full README ↗