Project · printable book · Open source · MIT + CC BY-NC-SA

DIVE logbook: A5 dive log, print-ready

130 pages, 42 spreads for dive records, a reference section 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.

Download · PDF · Free

Grab the finished PDF

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.

130 pages42 record spreadsA5 148 × 210 mmmonochrome
Download PDF ↗ GitHub ↗
# From release — just the PDFs
dive-logbook-A5-final.pdf
dive-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/
  • Start with punch-template-A5.pdf: print at 100%, disable "fit to page", and hold it against your ring cover — ring positions vary
  • Layout is text-editable: parameters at the top of src/logbook.py, the reference section is one function per page
01 — WHY IT EXISTS

Could not find one — made one

Outside of work I am a recreational diver with licences. A good paper A5 log I could not find on the market: either it did not fit a ring binder, or the reference pages were missing, or the field labels were smaller than a pen tip.

So I built one for myself and my dive buddies. Anyone who asked got a print or a file. It quietly spread among people before there was ever a repo. At some point putting the whole thing in the open was less work than emailing files.

The logic is simple: paper does not run out of battery on the boat, the instructor signs it, the reference opens in two seconds on a briefing without waiting for an app to load on bad island Wi-Fi. I have a digital log too — they are not competitors.

About the author
  • Licensed diver — the log was built around my own dives
  • Companion project — SAIL logbook for the other discipline: same code-as-layout, different reference material
  • Distributed the same way: free PDF, code under MIT, content under CC BY-NC-SA 4.0
02 — WHAT IS INSIDE

A spread per dive, and a reference you flip through on a briefing

Per spread: profile, gas, gear, self-assessment. Reference: short single-topic pages, so you find them by hand rather than by TOC.

/42

42 record spreads

Profile, max depth and time, gas and pressures, suit and weighting, visibility and temperature, current, notes. One dive — one spread.

/ref

Reference and emergency card

Safety and planned values, BWRAF, ascent, lost buddy, buoy, hand signals, incident actions, DCS, emergency contacts, gas planning, RMV in litres, reserve gas, nitrox and MOD, oxygen exposure, no-fly limits, weighting, base parameters.

/A5

Format and printing

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 so a foreign instructor can sign it.

03 — HOW TO PRINT

Start with the punch template, not the cover

The most common mistake is to order the run first and get rings that miss the block. Order: template, then cover, then run.

THREE FILES IN THE RELEASE
  • dive-logbook-A5-final.pdf — main, sheet exactly 148 × 210 mm. Print this if your shop does not stack-cut.
  • dive-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.
ORDER
  1. Print punch-template-A5.pdf at 100%, disable "fit to page".
  2. Hold it against your ring cover. If it aligns — print the block. If not — edit the punch parameters at the top of src/logbook.py.
  3. After the edit — one command (./build.sh) and re-check the template.
04 — BUILD IT YOURSELF

The layout is code, not a binary artboard

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 record 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/dive-logbook.git
cd dive-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
05 — LICENCES

Two licences: code reusable, content not for a stranger's print run

Code · MIT

Layout scripts, figure generator, checks — take them, fork them, reuse in your projects. Attribution is welcome but nobody is forced.

Content · CC BY-NC-SA 4.0

Reference text and figures — print for yourself, for friends, for a club, 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.

06 — FAQ

Frequently asked questions

Why paper when there are apps?
Paper does not run out of battery, does not need a connection, and gets signed by the instructor on the boat. On a trip in a remote place this is often more convenient than an app. And you cannot flip open a reference in an app underwater — on a briefing paper wins.
How do I print it?
A5, single-colour monochrome, any print shop. The release ships three files: the main 148 × 210 mm; a 154 × 216 mm bleed-3mm version with crop marks for shops that guillotine stacks; and a 1:1 punch template — start with that so the ring holes line up with your cover. Print the template at 100%, without "fit to page".
Can I adapt it?
Yes. Code is MIT, content (text and illustrations) is CC BY-NC-SA 4.0. Adapt for yourself and share derivatives under the same licence. Selling printed copies as a commercial product is not allowed — the NC bit closes that.
What do I need to build it myself?
Python 3.10+, pip install -r requirements.txt, ./build.sh. The PDFs land in dist/. They are not committed to the repo — they are built per release.
Is there something similar for sailing?
Yes — SAIL logbook. Same shape (A5, layout as code, monochrome, reference), different data set: MOB, MAYDAY, COLREGS, knots, tides, IALA buoys.