42 passage spreads
From / to, start and arrival times, distance, wind and sea, headings, crew and roles, sails, engine, notes. One passage — one spread.
144 pages, 42 spreads for passage records, a sailor's reference and an emergency card. Bilingual RU/EN field labels, monochrome printing, ring-binder punch. The finished PDF is free; the layout is described in Python code.
Three files in each release: the main A5, a bleed + crop-marks version for shops that cut stacks, and a 1:1 punch template to verify your ring cover. Nothing to build unless you want to change the layout.
# From release — just the PDFs
sail-logbook-A5-final.pdf
sail-logbook-A5-final-bleed3mm-cropmarks.pdf
punch-template-A5.pdf
# Or build it yourself
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
./build.sh # output in dist/
punch-template-A5.pdf: print at 100%, disable "fit to page", and hold it against your ring cover — ring positions varysrc/logbook.py, the reference section is one function per pageOutside of work I sail — licensed skipper. A paper log in the shape I wanted was not on the market: half were pretty little diaries without a reference, half were heavy official watch logs whose field labels were smaller than a pen tip, and none of them fit a ring binder cleanly.
So I built one for myself and my crew. Anyone who asked got a print or a file. Putting it in the open at some point was less work than answering emails.
Same logic as the dive log: paper does not run out of battery on a passage, the reference opens on a briefing in two seconds, a passage plan gets sketched by pencil across a spread and handed to the watch. Plotters and apps do not replace this — they complement it.
Per spread: route, times, headings, wind, crew and roles, sails, engine, notes. Reference: short single-topic pages, so you find them by hand rather than by TOC.
From / to, start and arrival times, distance, wind and sea, headings, crew and roles, sails, engine, notes. One passage — one spread.
Onboard safety, briefing, points of sail, MOB, radio and MAYDAY, emergency contacts, safety gear, lifelines and tethering, knots, speed and distance, COLREGS, lights and shapes, sound signals, day shapes, mooring, fenders, charter handover, checklists, passage plan, arrival plan, engine, weather, Beaufort, navigation and tides, IALA buoys.
A5 148 × 210 mm, ring-binder punch, single-colour monochrome — cheap at any print shop or on an office printer. Field labels in Russian and English, convenient in charter offices.
The most common mistake is to order the run first and get rings that miss the block. Order: template, then cover, then run.
sail-logbook-A5-final.pdf — main, sheet exactly 148 × 210 mm. Print this if your shop does not stack-cut.sail-logbook-A5-final-bleed3mm-cropmarks.pdf — 154 × 216 mm with 3 mm bleed and crop marks. Hand this to a shop that stack-cuts.punch-template-A5.pdf — one sheet, 1:1, to check punch alignment.punch-template-A5.pdf at 100%, disable "fit to page".src/logbook.py../build.sh) and re-check the template.Python 3.10+ and reportlab. One command builds the book. Edits are text, not InDesign.
The format was chosen on purpose: a binary artboard can no longer be opened a year later, let alone five. Code opens with git clone, edits go through diffs, history lives in commits.
Practical bit: parameters are at the top of src/logbook.py — number of passage spreads, note pages, the version string that ends up in the file name and PDF metadata. Reference pages and figures are separate modules, one function per page.
git clone https://github.com/yknnv/sail-logbook.git
cd sail-logbook
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
./build.sh
# Main edit points
src/logbook.py # geometry, cover, cards, assembly
src/reference.py # reference, one function per page
src/figures.py # vector figures
src/check_margins.py # margin and overlap checks
Layout scripts, figure generator, checks — take them, fork them, reuse in your projects. Attribution is welcome but nobody is forced.
Reference text, diagrams and figures — print for yourself, for friends, for the crew, publish derivatives under the same licence. What you may not do: sell printed copies as a commercial product (that is what the NC bit blocks). Large organisations — get in touch, we can arrange something separately.
pip install -r requirements.txt, ./build.sh. The PDFs land in dist/. They are not committed to the repo — they are built per release.