{
  "id": "funcionalidades",
  "title": "Funcionalidades",
  "description": "Mapa dos módulos ativos, das integrações entre eles e dos recursos ainda planejados.",
  "type": "overview",
  "status": "observed",
  "visibility": "public",
  "tags": [
    "módulos",
    "produto",
    "navegação",
    "integrações"
  ],
  "related": [
    "home",
    "dashboard",
    "contatos",
    "financas",
    "acertos",
    "notificacoes",
    "auditoria",
    "automacoes",
    "roadmap"
  ],
  "sourceRefs": [
    "https://github.com/james-suite/james/blob/master/README.md",
    "https://github.com/james-suite/james/blob/master/routes/web.php",
    "https://github.com/james-suite/james/blob/master/routes/contacts.php",
    "https://github.com/james-suite/james/blob/master/routes/financial.php",
    "https://github.com/james-suite/james/blob/master/routes/settlements.php",
    "https://github.com/james-suite/james/blob/master/routes/console.php"
  ],
  "authors": [],
  "updated": null,
  "diagram": null,
  "body": "## Como o produto é organizado\n\nO James separa o cadastro pessoal, a competência de acertos e o caixa financeiro em módulos conectados. Essa separação evita que uma dívida informal seja confundida com uma movimentação bancária e permite que cada tela tenha uma regra clara.\n\n| Área | Responsabilidade | Entrada principal |\n| --- | --- | --- |\n| [Dashboard](doc:dashboard) | Triagem diária e indicadores rápidos. | `/dashboard` |\n| [Contatos](doc:contatos) | Pessoas, grupos, notas e avatares. | `/contacts` |\n| [Finanças](doc:financas) | Contas, transações, cartões, faturas, recorrências, tags e relatórios. | `/financial` |\n| [Acertos](doc:acertos) | Saldos pessoais e despesas compartilhadas. | `/settlements` |\n| [Notificações](doc:notificacoes) | Alertas internos e canais externos opcionais. | `/notifications` |\n| [Auditoria e logs](doc:auditoria) | Histórico das mutações de dados de negócio. | `/audit` |\n| [Rotinas automáticas](doc:automacoes) | Scheduler, filas e materialização de dados. | comandos Artisan |\n\n## Integrações entre módulos\n\n### Contatos → Acertos\n\nUm acerto sempre aponta para um contato. O módulo de Contatos é a fonte do nome, avatar, categoria e grupos usados nas telas de saldos e rateios.\n\n### Acertos → Finanças\n\nUm lançamento ou uma divisão pode criar uma transação financeira opcional. A relação por `financial_transaction_id` permite navegar entre a promessa de pagamento e a entrada/saída efetiva do caixa.\n\n### Finanças → Notificações\n\nScheduler, vencimentos de faturas, recorrências, resumos mensais e importações de NFC-e usam a central de notificações para entregar contexto e uma ação de retorno.\n\n### Todos os módulos → Auditoria\n\nModels de negócio que usam `LogsActivity` deixam um diff dos campos alterados. Operações automáticas podem aparecer como realizadas pelo sistema quando não existe usuário autenticado.\n\n## Status da documentação\n\nAs páginas marcadas como `observed` descrevem comportamentos encontrados no código atual. Itens do [Roadmap](doc:roadmap) são intenções futuras e não devem ser tratados como funcionalidades disponíveis.\n\nOs módulos planejados incluem veículos e saúde/treinos. Eles permanecem separados do mapa de funcionalidades ativas para evitar expectativa de telas que ainda não existem.\n\n## Por onde começar\n\n- Usuário novo: [Primeiros passos](doc:primeiros-passos), [Dashboard](doc:dashboard) e [Visão geral](doc:visao-geral).\n- Uso financeiro: [Finanças](doc:financas), [Painel financeiro](doc:painel-financeiro) e [Relatórios](doc:relatorios).\n- Organização pessoal: [Contatos](doc:contatos) e [Acertos](doc:acertos).\n- Desenvolvimento: [Arquitetura](doc:arquitetura), [Rotinas automáticas](doc:automacoes) e [Contribuição](doc:contribuicao).",
  "sections": [
    {
      "id": "como-o-produto-e-organizado",
      "level": 2,
      "title": "Como o produto é organizado",
      "text": "O James separa o cadastro pessoal, a competência de acertos e o caixa financeiro em módulos conectados. Essa separação evita que uma dívida informal seja confundida com uma movimentação bancária e permite que cada tela tenha uma regra clara.  | Área | Responsabilidade | Entrada principal | | --- | --- | --- | | [Dashboard](doc:dashboard) | Triagem diária e indicadores rápidos. | `/dashboard` | | [Contatos](doc:contatos) | Pessoas, grupos, notas e avatares. | `/contacts` | | [Finanças](doc:financas) | Contas, transações, cartões, faturas, recorrências, tags e relatórios. | `/financial` | | [Acertos](doc:acertos) | Saldos pessoais e despesas compartilhadas. | `/settlements` | | [Notificações](doc:notificacoes) | Alertas internos e canais externos opcionais. | `/notifications` | | [Auditoria e logs](doc:auditoria) | Histórico das mutações de dados de negócio. | `/audit` | | [Rotinas automáticas](doc:automacoes) | Scheduler, filas e materialização de dados. | comandos Artisan |",
      "line": 1
    },
    {
      "id": "integracoes-entre-modulos",
      "level": 2,
      "title": "Integrações entre módulos",
      "text": "",
      "line": 15
    },
    {
      "id": "contatos-acertos",
      "level": 3,
      "title": "Contatos → Acertos",
      "text": "Um acerto sempre aponta para um contato. O módulo de Contatos é a fonte do nome, avatar, categoria e grupos usados nas telas de saldos e rateios.",
      "line": 17
    },
    {
      "id": "acertos-financas",
      "level": 3,
      "title": "Acertos → Finanças",
      "text": "Um lançamento ou uma divisão pode criar uma transação financeira opcional. A relação por `financial_transaction_id` permite navegar entre a promessa de pagamento e a entrada/saída efetiva do caixa.",
      "line": 21
    },
    {
      "id": "financas-notificacoes",
      "level": 3,
      "title": "Finanças → Notificações",
      "text": "Scheduler, vencimentos de faturas, recorrências, resumos mensais e importações de NFC-e usam a central de notificações para entregar contexto e uma ação de retorno.",
      "line": 25
    },
    {
      "id": "todos-os-modulos-auditoria",
      "level": 3,
      "title": "Todos os módulos → Auditoria",
      "text": "Models de negócio que usam `LogsActivity` deixam um diff dos campos alterados. Operações automáticas podem aparecer como realizadas pelo sistema quando não existe usuário autenticado.",
      "line": 29
    },
    {
      "id": "status-da-documentacao",
      "level": 2,
      "title": "Status da documentação",
      "text": "As páginas marcadas como `observed` descrevem comportamentos encontrados no código atual. Itens do [Roadmap](doc:roadmap) são intenções futuras e não devem ser tratados como funcionalidades disponíveis.  Os módulos planejados incluem veículos e saúde/treinos. Eles permanecem separados do mapa de funcionalidades ativas para evitar expectativa de telas que ainda não existem.",
      "line": 33
    },
    {
      "id": "por-onde-comecar",
      "level": 2,
      "title": "Por onde começar",
      "text": "- Usuário novo: [Primeiros passos](doc:primeiros-passos), [Dashboard](doc:dashboard) e [Visão geral](doc:visao-geral). - Uso financeiro: [Finanças](doc:financas), [Painel financeiro](doc:painel-financeiro) e [Relatórios](doc:relatorios). - Organização pessoal: [Contatos](doc:contatos) e [Acertos](doc:acertos). - Desenvolvimento: [Arquitetura](doc:arquitetura), [Rotinas automáticas](doc:automacoes) e [Contribuição](doc:contribuicao).",
      "line": 39
    }
  ],
  "sourcePath": "content/funcionalidades.md",
  "visuals": [],
  "apiVersion": 1
}
