Back to projects
Sep 10, 2026
6 min read

Adventure Logbook

A digital sailing logbook combining voyage records with Garmin inReach tracking and interactive route maps.

Adventure Logbook is a project I am building to keep a proper digital record of my sailing voyages. The starting point is the traditional sailing logbook used to record the course of a voyage, including positions, weather and sea conditions, important events, notes and other information collected during a passage. I want to combine this kind of structured voyage record with data that can already be collected automatically. A GPS track alone says where the yacht travelled, but it does not tell the story of the voyage. The idea is to keep the route, logbook entries and additional information together as one record that can be reviewed later.

The project grew naturally from my love of technology and travelling, especially sailing. I enjoy building things and understanding how they work, so creating my own system for recording and following voyages felt like an obvious project to explore.

Garmin inReach

Garmin inReach is the first live tracking source integrated with Adventure Logbook. Because it uses satellite communication, it can continue reporting positions during offshore passages where normal mobile connectivity is unavailable. The system periodically checks the inReach feed, imports new positions and adds them to the active journey. This allows the route to grow on the map while the voyage is taking place, so family and friends can follow its progress from the website. The integration also includes several data-quality checks. Duplicate events are ignored, invalid GPS fixes are rejected, and unrealistic jumps between positions are filtered out. Repeated polling is safe and does not create duplicate track points. Historical inReach data can also be matched with an existing journey. Before importing it, the administration panel shows how many points are available, already assigned, conflicting or rejected.

Automatic journey lifecycle

I wanted the system to work with as little manual intervention as possible.

A journey can be created in advance as planned. At its scheduled starting time, it begins waiting for tracking data. When the first valid inReach position arrives, the journey automatically becomes live and records its actual start time. If no new position is received for a configured period, the journey is completed automatically. Sailing plans can change, so a recently completed journey can also reopen if tracking resumes.

The current journey states are:

  • planned;
  • waiting for track;
  • live;
  • completed;
  • cancelled.

Journeys can still be completed or cancelled manually from the administration panel when necessary.

Interactive map

The public Logbook displays all available journeys on an interactive map. Each route has its own colour and remains visible when another journey is selected. Opening a journey shows its route, status, dates, distance, number of track points and Journey Log entries. Routes can be selected either from the journey list or directly from the map. The map refreshes its data automatically, allowing new inReach positions to appear without manually reloading the page. If a planned journey does not have a route yet, the map displays a short notice explaining that tracking will begin automatically after the first position is received.

Journey Log

The Journey Log adds the part that a GPS track cannot provide: the story and context of the voyage. Each entry can contain a date and time, title, description, entry type and optional coordinates. When coordinates are provided, the entry can be connected to a specific point on the map. Entries without coordinates remain normal chronological notes. Over time, I would like the logbook to include more traditional sailing information, such as weather, sea conditions, course changes, sail configuration, crew details and significant events. I do not want to define the complete model upfront. Part of the project is to use it during real voyages and gradually learn which information is genuinely useful to record.

Administration

Adventure Logbook includes a private administration panel where I can create journeys, add Journey Log entries, review inReach points and manage journey statuses. The system prevents overlapping active journeys, helping ensure that incoming tracking points are assigned to the correct voyage. Administrative actions are protected by authentication, and destructive operations require confirmation. Deleting a journey also removes its associated track points and Journey Log entries, while the original raw inReach data remains available for future reconciliation.

GPX

GPX will be the next tracking source. Unlike Garmin inReach, which provides positions incrementally during a voyage, a GPX file will usually contain a completed route recorded by another GPS device.

Both sources will ultimately provide track points for the same journey:

  • Garmin inReach for live satellite tracking;
  • GPX for importing completed tracks.

This keeps the journey at the centre of the project instead of making the system dependent on one particular device or technology.

Beyond sailing

Sailing is the reason I am building Adventure Logbook and remains the current focus. The same concept could eventually work for other activities where a route, timeline, notes and recorded events belong together.

Hiking, cycling and motorcycle trips are obvious possibilities, especially because GPX is already a common format across all of them.

For now, this remains a possible future direction.

Status

In test. The interactive map, Journey Log, administration panel, Garmin inReach polling, historical reconciliation and automatic journey lifecycle are implemented and currently being tested. The journeys and tracking information shown in the public Logbook are test data. They do not represent real voyages or current tracking activity. The next steps are connecting the production Garmin inReach feed, adding GPX import and testing the complete system during a real offshore passage.

Update — 25.09.2026

  • Added GPX import.
  • Replaced the previous map layer with OpenFreeMap for a cleaner, more detailed route view.
  • Improved route rendering and presentation of GPX and Garmin inReach tracks.
  • Added automatic journey completion and tested the full journey lifecycle.
  • Improved the administration panel, including journey management, GPX import and reconciliation tools.
  • Continued reliability testing of the complete tracking flow before the first real offshore use.