A maroto way to create PDFs. Maroto is inspired in Bootstrap and uses gofpdf. Fast and simple.
A maroto way to create PDFs. Maroto is inspired in Bootstrap and uses gofpdf. Fast and simple.
A Maroto way to create PDFs. Maroto is inspired in Bootstrap and uses Gofpdf. Fast and simple.
Maroto definition: Brazilian expression, means an astute/clever/intelligent person. Art by @marinabankr
You can write your PDFs like you are creating a site using Bootstrap. A Row may have many Cols, and a Col may have many components. Besides that, pages will be added when content may extrapolate the useful area. You can define a header which will be added always when a new page appear, in this case, a header may have many rows, lines or tablelist.
v2.4.2 is here! Try out:go get:go get github.com/johnfercher/maroto/[email protected]
v2 documentation here.v1 still exists in this branch, and you can see the doc here.Command Description DependenciesIf you are an AI agent/LLM working on this repository, read AGENTS.md first and follow the standards defined in .github/skills.
make build
Build project
go
make test
Run unit tests
go
make fmt
Format files
go (runs gofumpt/goimports via tools/go.mod)
make lint
Check files
go (runs golangci-lint via tools/go.mod)
make dod
(Definition of Done) Format files and check files
Same as make build, make test, make fmt, make lint and make codecov
make install
Install all dependencies and the pre-commit hook
go and npm (for docsify-cli)
make examples
Run all examples
go
make mocks
Generate mocks
go (runs mockery via tools/go.mod)
make docs
Run docsify docs server local
docsify
make godoc
Run godoc server local
go (runs godoc via tools/go.mod)
make install-hooks
Point git at .githooks so make dod runs on every commit
git
make codecov
Warn about functions with 0% test coverage (never fails)
go
goimports, gofumpt, golangci-lint, mockery, and godoc are versioned tool dependencies
declared in tools/go.mod, a separate module so their transitive dependencies
never end up in the main go.sum. See contribution.md
for details.
make install (or make install-hooks on its own) configures a pre-commit git hook, tracked at
.githooks/pre-commit, that runs make dod before every commit and blocks
it if build, test, fmt, or lint fail.
No open issues yet, or sync has not completed.