Momovu
Preview dustjackets, covers, and interior pages of print books before publication
Momovu is an based application for visualizing safety margins, spine widths, and dustjacket layouts on PDF documents. It helps publishers and designers ensure proper margins before sending books to print.
Features
- PDF Margin Visualization: Preview safety margins on any PDF document
- Multiple Document Types: Support for interior pages, covers, and dustjackets
- Interactive Navigation: Zoom, pan, and navigate through pages
- Presentation Mode: Full-screen presentation for reviewing layouts
- Configurable Margins: Customizable safety margins and spine dimensions
- Performance Optimized: Efficient rendering with caching and spatial indexing
Installation
System Requirements
- Python 3.9 or higher
Dependencies (Debian)
sudo apt install python3-pip python3-venv python-is-python3
Install from PyPi
The easiest install, suit to taste:
pip install momovu
Install from Source
git clone https://spacecruft.org/books/momovu
cd momovu/
python -m venv venv
source venv/bin/activate
pip install -U setuptools pip wheel
pip install -e .
Usage
Basic Usage
# Preview margins on a PDF
momovu document.pdf
# Specify document type and page count
momovu --document cover --num-pages 300 book.pdf
# Jump to a specific page in an interior document
momovu samples/bovary-interior.pdf --jump 50
# Short form with other options
momovu samples/bovary-interior.pdf -j 50 --side-by-side
# Enable debug logging
momovu --debug document.pdf
Command Line Options
$ momovu --help
usage: momovu [-h] [-D] [-v] [-V] [-n N] [-d TYPE] [-j PAGE] [-s] [-m | --safety-margins | --no-safety-margins] [-t | --trim-lines | --no-trim-lines] [-b | --barcode | --no-barcode] [-l | --fold-lines | --no-fold-lines] [-p] [-f] [PDF_FILE]
Preview margins on book PDFs before publication.
positional arguments:
PDF_FILE Path to the PDF file to preview margins for
options:
-h, --help show this help message and exit
-D, --debug Enable debug logging
-v, --verbose Increase output verbosity (can be used multiple times)
-V, --version Show version and exit
-n, --num-pages N Set number of pages for spine calculations (must be positive)
-d, --document TYPE Set document type for margin calculations (interior, cover, dustjacket)
-j, --jump PAGE Jump to page number (interior documents only)
-s, --side-by-side Enable side-by-side dual page view mode
-m, --safety-margins, --no-safety-margins
Show safety margins (default: enabled)
-t, --trim-lines, --no-trim-lines
Show trim lines (default: enabled)
-b, --barcode, --no-barcode
Show barcode area for cover/dustjacket (default: enabled)
-l, --fold-lines, --no-fold-lines
Show fold lines for cover/dustjacket (default: enabled)
-p, --presentation Start in presentation mode
-f, --fullscreen Start in fullscreen mode
Example: momovu --num-pages 300 --document cover book.pdf
Development
For main development docs, see:
To build and add to PyPi:
pip install -e .[dev]
python -m build
python -m twine upload dist/*
Links
- Main Website and Documentation: https://momovu.org
- Source Code: https://spacecruft.org/books/momovu
- Issues: https://spacecruft.org/books/momovu/issues
- Changelog: CHANGELOG.txt
Status
Stable - Works well.
License
Apache 2.0 License. See LICENSE-apache.txt for details.
This is an unofficial project, not related to any upstream projects.
Copyright © 2025 Jeff Moe
Metadata
Release files for momovu 1.6.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| momovu-1.6.6.tar.gz | 5.1 MB | Without provenance | Details for momovu-1.6.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| momovu-1.6.6-py3-none-any.whl | Python 3 | none | any | Details for momovu-1.6.6-py3-none-any.whl |
Total release size: 5.6 MB
Release files / momovu-1.6.6.tar.gz
| Download URL | momovu-1.6.6.tar.gz |
|---|---|
| Size | 5.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
57dc55ec8228ae90228422e3079dc57bab876f9b2b6c4cf4e2dabd81a7a25c79
|
|
BLAKE2b-256 checksum How to use checksums |
f85467d42cd5f3591c1b201af395e533f05b156d85c3266a1d6a800b538a5a8a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.5
|
Release files / momovu-1.6.6-py3-none-any.whl
| Download URL | momovu-1.6.6-py3-none-any.whl |
|---|---|
| Size | 541.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7eb6d796280e1e5cf6d69a8300ee1a850362206b2b4340a2815fb65929797683
|
|
BLAKE2b-256 checksum How to use checksums |
db6b320376535e2c5b99bd8e8a2bd5fef9bc7aaef771369433206790abb3cdf3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.5
|
Security for momovu 1.6.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.