Goru
Goru - the perfect looser to transform your pdf
Install / Use
/learn @Zenika/GoruREADME
Goru
Naming
Oru is the root of "Origami". Goru is the concatenation of Go+oru
This library aims to help people with pdf transformations like rotation, ordering...
Run in docker
docker run -d -p 8080:8080 zenika/goru
Installation
Link the project in your $GOPATH :
mkdir -p $GOPATH/src/github.com/Zenika
ln -s $(pwd) $GOPATH/src/github.com/Zenika/goru
As a prerequisite for managing dependencies, install govendor :
go get -u github.com/kardianos/govendor
Fetch go dependencies :
cd $GOPATH/src/github.com/Zenika/goru
govendor sync
Build
cd $GOPATH/src/github.com/Zenika/goru
go build
Run
Build then launch server :
./goru server
Upload new files with PUT requests on /document/:file/content (file without .pdf suffix) with content type application/pdf.
Download a file with a GET request on /document/:file/content (file without .pdf suffix).
Modify a file with a POST request on /document/:file/edit (file without .pdf suffix) with actions to perform.
Example :
[
{
"action": "LEFT_ROTATE_PAGE",
"page": 1
},
{
"action": "RIGHT_ROTATE_PAGE",
"page": 2
},
{
"action": "LEFT_ROTATE_PAGE",
"page": 3
},
{
"action": "LEFT_ROTATE_PAGE",
"page": 3
},
{
"action": "DELETE_PAGE",
"page": 4
},
{
"action": "MOVE_PAGE",
"page": 53,
"target": 1
}
]
WARNING ! The PDF file gets modified in place without backup !
Run in CLI mode
Download a PDF to manipulate :
curl http://www.syntec.fr/fichiers/Annexes/20130719184036_Convention_Syntec_Annexe_06.pdf -o syntec.pdf
Examples
Left rotate a page :
./goru left-rotate-page syntec.pdf 1 test.pdf
Delete a page :
./goru delete-page syntec.pdf 2 test.pdf
Move a page :
./goru move-page syntec.pdf 54 1 test.pdf
Related Skills
node-connect
334.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
xurl
334.1kA CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
frontend-design
82.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
summarize
334.1kSummarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).
