Entrada
PDFs digitais e digitalizações / imagens (PNG, JPG e similares). Documentos multipágina e PDFs multiconta — por exemplo pesos e dólares em um único arquivo — produzem um cartão por conta.
O Fulgoria extrai dados estruturados de documentos que foram projetados para serem lidos, não analisados. Você o ensina um layout uma vez marcando colunas; a partir daí ele lê todos os documentos desse tipo e lhe dá um CSV limpo. Tudo abaixo acontece no seu navegador.
Clique em Abrir PDF ou imagem e escolha um arquivo, ou selecione Ver um exemplo para carregar um extrato bancário de amostra. PDFs digitais e digitalizações ou fotos são ambos aceitos. Digitalizações e imagens são lidas com OCR local (Tesseract.js), de modo que até uma imagem de um extrato vira texto sem sair da sua máquina.
O Fulgoria detecta as colunas automaticamente como primeira passagem. Você as refina arrastando sobre o documento para indicar onde cada dado fica. Em seguida, atribua um papel a cada coluna:
Você também pode aplicar formatação livre, no estilo Excel por coluna (padrões de data e número, WYSIWYG) e definir regras de exclusão por conteúdo para pular cabeçalhos repetidos, linhas de “TOTAIS” e ruído semelhante.
Um editor estilo planilha permite corrigir qualquer célula, com o saldo recalculado ao vivo. Ele suporta localizar e substituir, adicionar e excluir linhas, colar do Excel, desfazer/refazer, preenchimento para baixo, categorização assistida, sinalizadores de qualidade e valores de abertura/fechamento editáveis.
Quando os dados estiverem limpos, exporte-os:
.ext.json ou .ext.yaml (veja abaixo).Entrada
PDFs digitais e digitalizações / imagens (PNG, JPG e similares). Documentos multipágina e PDFs multiconta — por exemplo pesos e dólares em um único arquivo — produzem um cartão por conta.
Saída
CSV para os movimentos, e arquivos de modelo em .ext.json ou .ext.yaml para
o layout. Um handoff “Enviar ao Escriba” passa o resultado para o resto da suite.
Na primeira vez que você marca o extrato de um banco, o Fulgoria pode salvar esse layout como um modelo. Na próxima vez que você abrir um documento do mesmo tipo, ele é reconhecido automaticamente e as colunas já estão no lugar — sem remarcar.
Modelos podem ser carregados a partir de um arquivo .json baixado ou escolhidos entre seus modelos salvos
dentro do app.
Tudo é executado no seu navegador. O PDF é aberto, lido e processado dentro da sua máquina, e não há uma única requisição externa — fontes e bibliotecas são embarcadas no app. A privacidade não é um recurso acoplado; é a arquitetura.
Quando o Fulgoria é self-hosted, o servidor enxuto ainda assim nunca recebe o documento. Ele apenas
serve os arquivos estáticos e cuida do login opcional. Ele aplica uma CSP estrita e cabeçalhos de
segurança, e nunca expõe .env, server.js ou quaisquer amostras privadas.
Para produção, o Fulgoria inclui um servidor enxuto (server.js, Node/Express) cujas únicas tarefas
são servir o app estático e protegê-lo atrás de um login opcional lido do .env.
Defina AUTH_ENABLED=true e configure AUTH_USER e AUTH_PASSWORD. As sessões são
assinadas com SESSION_SECRET e duram SESSION_TTL_HOURS horas. Atrás de HTTPS, mantenha
COOKIE_SECURE=true.
Defina AUTH_ENABLED=false para servir o app sem senha — conveniente para uso local
ou em uma rede privada confiável.
Gere um hash de senha bcrypt e um segredo de sessão assim:
node server.js --hash 'your-password' # → AUTH_PASSWORDopenssl rand -hex 32 # → SESSION_SECRETTodas as configurações vivem no .env:
| Variável | Padrão | Finalidade |
|---|---|---|
PORT | 3000 | Porta do servidor. |
AUTH_ENABLED | true | Liga ou desliga o login. |
AUTH_USER | diego | Nome de usuário do login. |
AUTH_PASSWORD | (vazio) | Senha em texto simples ou hash bcrypt. |
SESSION_SECRET | (vazio) | Assina o cookie de sessão. |
SESSION_TTL_HOURS | 12 | Duração da sessão em horas. |
COOKIE_SECURE | true | true atrás de HTTPS, false para http:// local. |
ESCRIBA_URL | (vazio) | Alvo de “Enviar ao Escriba”; vazio recai para /. |