Maroto
A maroto way to create PDFs. Maroto is inspired in Bootstrap and uses gofpdf. Fast and simple.
Install / Use
/learn @johnfercher/MarotoREADME
Maroto V2
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.
Maroto v2.4.0 is here! Try out:
- Installation with
go get:
go get github.com/johnfercher/maroto/v2@v2.4.0
- You can see the full
v2documentation here. - The
v1still exists in this branch, and you can see the doc here.

Contributing
| Command | Description | Dependencies |
|-----------------|---------------------------------------------------|---------------------------------------------------------------|
| make build | Build project | go |
| make test | Run unit tests | go |
| make fmt | Format files | gofmt, gofumpt and goimports |
| make lint | Check files | golangci-lint |
| make dod | (Definition of Done) Format files and check files | Same as make build, make test, make fmt and make lint |
| make install | Install all dependencies | go, curl and git |
| make examples | Run all examples | go |
| make mocks | Generate mocks | go and mockery |
| make docs | Run docsify docs server local | docsify |
| make godoc | Run godoc server local | godoc |
