Analysis updated 2026-05-18
Translate a scientific paper PDF into another language while keeping formulas, tables, and layout intact.
Translate a scanned or image based PDF that other translation tools cannot handle cleanly.
Deploy a shared PDF translation service for a team using Docker.
Run the desktop app on Windows, macOS, or Linux for personal document translation.
| wxyhgk/retain-pdf | vasu-devs/justhireme | mayersscott/rkn-block-checker | |
|---|---|---|---|
| Stars | 1,654 | 1,703 | 1,554 |
| Language | Python | Python | Python |
| Last pushed | — | — | 2026-06-12 |
| Maintenance | — | — | Maintained |
| Setup difficulty | easy | moderate | easy |
| Complexity | 3/5 | 3/5 | 2/5 |
| Audience | researcher | vibe coder | general |
Figures from each repo's GitHub metadata at analysis time.
Prebuilt installers exist for Windows, macOS, and Linux, team or multi-device use is recommended via Docker compose instead.
RetainPDF is a tool for translating PDF documents while keeping the original page layout, formatting, and structure intact. It is aimed especially at scientific papers and technical documents, where formulas, tables, and diagrams need to stay in place after translation rather than being reflowed into a plain text block. The project pays particular attention to scanned or image based PDFs, which are much harder to translate cleanly than text based ones, since the layout has to be reconstructed from images rather than read directly from the file. It also focuses on rendering inline mathematical formulas correctly after translation, which many similar tools struggle with. According to the README's own comparison table, RetainPDF supports scanned PDFs, complex inline formulas, accurate code block handling, toggleable table detection, custom translation rule configuration, and continued PDF size optimization, in cases where some other tools it compares itself to do not. The system is split into a frontend and a backend, with OCR, translation, layout reconstruction, and file delivery handled as separate stages, so the pieces can be replaced or extended independently by other developers. For everyday use, prebuilt release packages are available for Windows, using a Setup.exe installer, for macOS, using a .dmg file, and for Linux, using a .deb package. Anyone wanting to run RetainPDF for a team, on a local network, or on several machines at once is pointed toward a Docker based deployment instead, using a provided docker compose configuration that starts a frontend, a Rust based API, and a file upload service on separate local ports. The backend combines a Rust API with Python scripts, reflecting the project's mixed language approach to handling OCR, translation, and layout work. The project maintains a community discussion group and public documentation covering setup, architecture, and its own planning notes for future work. RetainPDF is released under the MIT license.
RetainPDF translates PDF documents, especially scanned and scientific papers, while preserving the original layout, formulas, and structure instead of reflowing the text.
Mainly Python. The stack also includes Python, Rust, Docker.
You can use, modify, and distribute this software freely, including for commercial purposes, as long as you keep the original copyright notice.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.