Voltar ao portfólio
Gestão & CRM

Financial Snapshot

Snapshot financeiro (rascunho).

Não publicadoAbrir no Lovable

Descrição completa

Snapshot financeiro (rascunho).

Rascunho inicial sem stack definida.

Estágio atual: Ideia (20% de maturidade estimada). O foco do próximo ciclo deve ser fechar os gaps de segurança listados ao lado, antes de abrir para clientes externos.

Diagnóstico desse app

3 OK2 Atenção1 Crítico

Visão por área com a evidência usada para classificar cada status e a ação concreta para mudar de patamar.

Publicação

Atenção

Evidência: Ainda só em preview — URL pública não foi gerada.

Recomendação: Clicar em Publish no topo do editor para gerar a URL pública.

GitHub / código-fonte

Crítico

Evidência: Repositório GitHub não está conectado — código vive apenas dentro do Lovable.

Recomendação: Menu (+) → GitHub → Connect project. Habilita backup, code review e CI/CD próprio.

Autenticação

OK

Evidência: App não exige login — sem superfície de auth a proteger.

Recomendação: Se um dia exigir conta, ativar email/senha + Google e já incluir MFA + HIBP.

Banco de dados

OK

Evidência: App não persiste dados em banco.

Recomendação: Se adicionar banco, começar já com RLS ligada e GRANTs explícitos.

Uploads

OK

Evidência: App não recebe arquivos do usuário.

Recomendação: Se passar a receber, validar mime/tamanho e usar signed URLs desde o primeiro upload.

Baseline (logs, SEO, validação)

Atenção

Evidência: 4/5 fundamentos no lugar. Pendentes: Logs estruturados + Sentry no client e server.

Recomendação: Instalar Sentry no client e nas server functions; capturar erros com user.id e contexto da rota.

Riscos e recomendações prioritárias

  1. 1
    MédioBaseline (todo app deveria ter)

    Logs estruturados + Sentry no client e server

    Por quê: Sem observabilidade, você descobre o incidente pelo cliente reclamando.

    Ação: Instalar Sentry no client e nas server functions; capturar erros com user.id e contexto da rota.

  2. 2
    MédioEspecíficos deste app

    Definir KPIs

    Por quê: Item pendente do checklist — endereçar antes de abrir para clientes externos.

    Ação: Implementar: Definir KPIs.

  3. 3
    MédioEspecíficos deste app

    Auth com MFA + HIBP

    Por quê: Conta sequestrada vira porta de entrada para todo o resto.

    Ação: Cloud → Users → Auth Settings → habilitar MFA (TOTP) e exigir para roles admin.

  4. 4
    MédioEspecíficos deste app

    Revisão de RLS por tabela

    Por quê: Sem RLS/GRANT correto, qualquer usuário pode ler ou alterar dados de outros.

    Ação: Para cada tabela em public.*: ALTER TABLE … ENABLE ROW LEVEL SECURITY + policy escrita com auth.uid().

  5. 5
    MédioEspecíficos deste app

    Rate limit nas APIs

    Por quê: Sem rate limit, um único usuário derruba ou inflaciona o custo do serviço.

    Ação: Middleware por IP+user_id (ex: 60 req/min) com bucket no Redis ou tabela com TTL.

Checklist completo

4/9 (44%)

Cada item traz status (OK · Atenção · Crítico) e, quando pendente, a recomendação específica de correção.

Baseline (todo app deveria ter)

4/5 OK
  • Validação Zod em toda server functionOK
  • Rate limit por usuário/IPOK
  • Logs estruturados + Sentry no client e serverAtenção

    Como corrigir: Instalar Sentry no client e nas server functions; capturar erros com user.id e contexto da rota.

  • SEO mínimo (head/meta + OG) por rota públicaOK
  • Páginas de Privacidade e TermosOK

Específicos deste app

0/4 OK
  • Definir KPIsAtenção

    Como corrigir: Implementar: Definir KPIs.

  • Auth com MFA + HIBPAtenção

    Como corrigir: Cloud → Users → Auth Settings → habilitar MFA (TOTP) e exigir para roles admin.

  • Revisão de RLS por tabelaAtenção

    Como corrigir: Para cada tabela em public.*: ALTER TABLE … ENABLE ROW LEVEL SECURITY + policy escrita com auth.uid().

  • Rate limit nas APIsAtenção

    Como corrigir: Middleware por IP+user_id (ex: 60 req/min) com bucket no Redis ou tabela com TTL.

Histórico de mudanças

  1. Início
    Projeto criado no Lovable — categoria gestao.
  2. Hoje
    Maturidade estimada em 20% (Ideia). 5 item(ns) pendente(s) de segurança.

Edite src/data/apps.ts e adicione um array changelog ao app para registrar marcos manuais.