Biblioteca TypeScript minimalista e sem dependências para gerar PDFs reais com texto, retângulos, linhas, imagens JPEG e links.
carlos7ags/folio
Biblioteca Go para gerar, editar e assinar PDFs, converter HTML em PDF e criar layouts, formulários, códigos de barras e arquivos PDF/A.
Alternativa open source a:Adobe Acrobat
- Estrelas
- 873
- Forks
- 57
- Issues abertas
- 49
- Último commit
- anteontem
O que é?
Folio é uma biblioteca de PDF para Go. Ela oferece um mecanismo de layout para parágrafos, tabelas, listas, contêineres flex e imagens, além de converter HTML e CSS em PDF no próprio processo, sem precisar de um navegador headless. As páginas podem ser criadas pela API Go, e PDFs existentes podem ser importados como modelos e preenchidos com conteúdo dinâmico.
Além de gerar PDFs, Folio também lê e mescla arquivos, extrai texto e remove texto permanentemente por meio de redação. A biblioteca também cria campos AcroForm, adiciona assinaturas digitais PAdES (B-B, B-T e B-LT) com suporte a assinadores externos e gera arquivos PDF/A e PDFs com tags. O processamento de texto atende a scripts da esquerda para a direita, da direita para a esquerda, Indic e CJK. Entre os códigos de barras disponíveis estão Code128, QR e EAN-13.
Folio inclui uma CLI para mesclar e inspecionar PDFs e extrair texto, além de uma biblioteca compartilhada em C que disponibiliza suas funções para uso em outras linguagens por meio de FFI.
Recursos principais
- 01Mecanismo de layout com tabelas, listas, contêineres flex, imagens e divisão de conteúdo em quebras de página.
- 02Conversão de HTML e CSS em PDF executada no próprio processo.
- 03Processamento de texto para scripts LTR, RTL, Indic e CJK.
- 04Campos interativos AcroForm, como texto, caixa de seleção, botão de opção, menu suspenso e assinatura.
- 05Assinaturas digitais PAdES com suporte a assinadores externos, como HSM ou KMS.
- 06Redação baseada em texto que remove conteúdo dos fluxos de conteúdo.
- 07Geração de PDF/A e PDF com tags, além de biblioteca compartilhada em C e CLI.
Casos de uso
- Gerar faturas, relatórios ou recibos em backends Go.
- Preencher modelos de PDF existentes, como papel timbrado ou certificados.
- Produzir PDFs para arquivamento ou acessibilidade que precisem de PDF/A ou tags.
- Assinar ou redigir PDFs em um pipeline de processamento de documentos.
Início rápido
- 1
Instale a biblioteca
go get github.com/carlos7ags/folio - 2
Crie um arquivo Go com o exemplo Hello World do README e execute-o
go run main.go
Antes de usar
- Requer Go 1.25 ou superior.
- Alguns recursos de HTML e CSS não são compatíveis; consulte docs/CSS_SUPPORT.md.
Tópicos
Perguntas frequentes
- O que é folio?
- Biblioteca Go para gerar, editar e assinar PDFs, converter HTML em PDF e criar layouts, formulários, códigos de barras e arquivos PDF/A. Folio é uma biblioteca de PDF para Go. Ela oferece um mecanismo de layout para parágrafos, tabelas, listas, contêineres flex e imagens, além de converter HTML e CSS em PDF no próprio processo, sem precisar de um navegador headless. As páginas podem ser criadas pela API Go, e PDFs existentes podem ser importados como modelos e preenchidos com conteúdo dinâmico.
- folio é gratuito? Qual é a licença?
- folio é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- folio ainda é mantido?
- Manutenção ativa. O último commit de folio foi em 17 de out. de 2026.
- Para que posso usar folio?
- Gerar faturas, relatórios ou recibos em backends Go. Preencher modelos de PDF existentes, como papel timbrado ou certificados. Produzir PDFs para arquivamento ou acessibilidade que precisem de PDF/A ou tags. Assinar ou redigir PDFs em um pipeline de processamento de documentos.
- Como instalar folio?
- Instale a biblioteca: go get github.com/carlos7ags/folio Crie um arquivo Go com o exemplo Hello World do README e execute-o: go run main.go
- Onde consigo folio?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/carlos7ags/folio
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Plataforma open source auto-hospedada para criar formulários PDF, preenchê-los e coletar assinaturas eletrônicas online.
Uma TUI de terminal para navegar, conectar-se e gerenciar hosts SSH definidos no arquivo ~/.ssh/config.
Uma CLI em Go para tmux que salva sessões, janelas, painéis e comandos e depois os restaura sob demanda por meio de um seletor TUI.
Serviço completo de desenvolvimento de software, escrito em Go e hospedado por conta própria, com Git, revisão de código, issues, pacotes e CI/CD.
Conversor de arquivos online auto-hospedado que aceita mais de mil formatos, desenvolvido com TypeScript, Bun e Elysia.