Aplicacao Node.js para analise financeira com upload de extrato, autenticacao, relatorios e assinatura.
- Instale dependencias.
npm install-
Crie o .env a partir de .env.example e preencha as chaves.
-
Rode em desenvolvimento.
npm run dev- Rodar app local: npm run dev
- Rodar app modo normal: npm start
- Check de sintaxe: npm run check
- Auditoria de segredos (arquivos rastreados): npm run audit:secrets
- Testes HTTP: npm test
- Verificacao padrao (check + testes): npm run verify
- Verificacao pre-push (audit + verify): npm run prepush
- Instalar hook local pre-push: npm run hooks:install
- Verificar integracao Firebase: npm run firebase:check
- Verificacao completa com Firebase: npm run verify:firebase
- Suite local completa: powershell -ExecutionPolicy Bypass -File scripts/dev/run-checks.ps1
- Suite completa com smoke real: set RUN_FULL=1 ; powershell -ExecutionPolicy Bypass -File scripts/dev/run-checks.ps1
npm run pm2:start
npm run pm2:restart
npm run pm2:logsConfiguracao em ecosystem.config.js.
npm run start:prod- Endpoint: GET /healthz
- Verificacao local: npm run healthcheck
Sem esses valores a aplicacao nao opera corretamente em producao:
- APP_ENV
- PORT
- APP_URL
- DB_HOST
- DB_PORT
- DB_NAME
- DB_USER
- DB_PASS
- SESSION_SECRET
- COOKIE_SIGNING_SECRET
- GEMINI_API_KEY
- STRIPE_SECRET_KEY
- STRIPE_PRICE_ID
- STRIPE_WEBHOOK_SECRET
O projeto foi preparado para integrar com Firebase Admin sem quebrar o fluxo atual.
Estado atual:
- Rotas continuam operando com MySQL
- Firebase ja pode ser validado e monitorado pelo healthcheck
Configuracao minima:
- FIREBASE_PROJECT_ID
- FIREBASE_SERVICE_ACCOUNT_PATH (arquivo JSON) ou FIREBASE_SERVICE_ACCOUNT_JSON (inline)
Validacao:
npm run firebase:checkPara login social/e-mail, tambem preencher:
- GOOGLE_CLIENT_ID
- GOOGLE_CLIENT_SECRET
- GOOGLE_REDIRECT_URI
- RESEND_API_KEY
- Endpoints publicos e internos permanecem em rotas com sufixo .php por compatibilidade.
- Upload de planilha aceita apenas CSV e XLSX.