Skip to content

Mapa de repositórios

6 repositórios, cada um com um papel bem definido. Entender esse mapa é essencial para saber onde mexer sem causar impacto inesperado.


Visão geral

mermaid
graph TB
    subgraph Frontends
        IB[MonetizandoInvest-IB\nInternet Banking\nReact + Vite]
        BO[MonetizandoInvest-BackOffice\nBackOffice interno\nReact + Vite]
        MOB[MonetizandoInvest-Mobile\nApp iOS + Android\nReact Native + Expo]
        WS[MonetizandoInvest-WorkSpace\nMonorepo compartilhado]
    end

    subgraph Backend
        API[MonetizandoInvest-API\nNode.js + TypeScript\nFonte da verdade]
    end

    subgraph Infra
        GOV[monetizando-governanca\nPAVs, docs, CI/CD]
        AWS[AWS\nECS + RDS + ElastiCache]
        KC[Keycloak\nAuth OAuth2]
        LEGACY[(MySQL Legado\nread-only)]
    end

    IB --> API
    BO --> API
    MOB --> API
    WS --> IB
    WS --> BO
    API --> AWS
    API --> KC
    API --> LEGACY
    GOV -.->|governa| API
    GOV -.->|governa| IB
    GOV -.->|governa| BO
    GOV -.->|governa| MOB

    style API fill:#004132,color:#fff
    style GOV fill:#D99D52,color:#003125
    style LEGACY fill:#f5c6cb,stroke:#dc3545

Repositórios em detalhe

MonetizandoInvest-API — Backend Node.js

  • Branch base: staging
  • O que tem: endpoints REST, regras de negócio, integrações (Matera, Keycloak, AWS)
  • Quando mexer: qualquer lógica de negócio, novo endpoint, correção de bug no servidor
  • ⚠️ Não mexer: conexão direta com o banco legado além do que já existe

MonetizandoInvest-IB — Internet Banking (web)

  • Branch base: staging
  • O que tem: portal React para gestores de empresa
  • Quando mexer: features ou bugs que afetam o acesso via browser desktop/tablet
  • ⚠️ Não mexer: adicionar regras de negócio aqui — isso vai para a API

MonetizandoInvest-BackOffice — BackOffice interno

  • Branch base: staging
  • O que tem: painel para a equipe interna do Monetizando (KYC, AML, transações)
  • Quando mexer: features operacionais internas
  • ⚠️ Não mexer: dados diretamente — sempre via API

MonetizandoInvest-Mobile — App React Native

  • Branch base: staging
  • O que tem: app iOS + Android com Expo + EAS Build
  • Quando mexer: features ou bugs do app mobile
  • ⚠️ Cuidado: testes E2E rodam no AWS Device Farm — alterações em flows críticos precisam de Maestro .yaml

MonetizandoInvest-WorkSpace — Monorepo compartilhado

  • Branch base: staging
  • O que tem: componentes e utilidades compartilhadas entre IB e BO
  • Quando mexer: componente que precisa funcionar em mais de um frontend

monetizando-governanca — Governança

  • Branch base: main
  • O que tem: CLAUDE.md (gates), PAVs, templates, esta documentação, CI/CD rules
  • Quando mexer: processo, documentação, regras de CI
  • ⚠️ Não mexer: nunca commita código de aplicação aqui

Recursos compartilhados — tome cuidado

Alguns recursos são consumidos por múltiplos serviços. Alterar qualquer um deles pode quebrar produção.

RecursoConsumidoresRisco
POST /api/auth/*IB Web, MobileQuebra login em todos os frontends
admins (tabela legado)BackOffice, WorkSpaceQuebra autenticação de admins
user (tabela legado)IB, Mobile, BackOfficeQuebra login e perfil
Keycloak realm monetizandoIB, MobileQuebra OAuth
ECS Task DefinitionTodos os backendsPode derrubar todos os serviços

Banco de dados legado

O banco MySQL legado é read-only. Nunca execute migrations ou synchronize: true. A única exceção é a tabela device.

Monetizando Invest