LogicPaper: Automação de documentos self-hosted (FastAPI + LibreOffice + Redis). Transforme Excel/JSON em PDFs usando Jinja2
Bom dia a todos!
Gostaria de compartilhar uma ferramenta que desenvolvi chamada LogicPaper. É um motor de automação de documentos open-source projetado para mesclar dados estruturados templates para gerar arquivos em massa.
O que ela faz: Você faz o upload de um template (ex: Word .docx) usando placeholders do Jinja2 (como {{ client_name | format_string('title') }}) e um conjunto de dados (Excel ou JSON). O LogicPaper processa cada linha e gera um documento preenchido correspondente.
Por que eu fiz essa ferramenta: Eu precisava, pro meu trabalho, de uma maneira de gerar centenas de contratos e relatórios sem o trabalho manual de copiar e colar. Como criei essa ferramenta no meu tempo livre, decidi torná-la de código aberto. Ela se encaixa em qualquer fluxo de trabalho que precise de documentos padronizados preenchidos com dados variáveis.
Principais Recursos:
-
Multiformato: Suporta templates em .docx, .pptx, .md e .txt.
-
Mapeamento Multi-Modelo: Você pode gerar múltiplos documentos (ex: um Contrato, uma Apresentação de Slides e um Resumo) a partir de uma única linha de dados de uma só vez.
-
Conversão para PDF: Inclui uma instância headless do LibreOffice para converter automaticamente os arquivos Office gerados para PDF.
-
Processamento em Lote Assíncrono: Lida com grandes conjuntos de dados via background workers para evitar timeouts de requisição.
Pronto para Integração: Possui uma API, facilitando o acionamento através de outras ferramentas.
A ferramenta está conteinerizada e pronta para o deploy. Espero que ajude alguém!
Repositório GitHub: https://github.com/rubensbraz/logicPaper/
Documentação dos Placeholders: https://rubensbraz.github.io/LogicPaper/help.html