Real Threads

Real Threads

A Sailor's War — Primer

Project Primer: A Sailor's War

Origins

In the Second World War, the creator's grandfather served in the Royal Navy. He wrote the names of the places he visited on the spreader bar of his hammock — a physical artefact that became the seed for this project. A Sailor's War presents a series of interactive maps tracing those places across the globe, with AI-generated historical commentary providing context for each location.

The project combines intimate family history with grand historical narrative, turning a personal object into a geographic and narrative journey through WWII's major naval campaigns.

Structure

The project is a single page with five sections, each containing an embedded interactive Plotly map and accompanying narrative text:

  1. A Sailor's War: Tracing the Royal Navy's Footsteps Across Theatres — Overall map showing all ~30 locations (map1_overall.html)
  2. The Atlantic Lifeline — US East Coast ports and transatlantic convoy routes (map2_us_east_coast.html)
  3. Turning the Tide in the Mediterranean — North African campaign: Oran, Bizerte, Algiers, Tripoli, etc. (map3_north_africa.html)
  4. The Italian Campaign: Amphibious Warfare — Sicily and mainland Italy: Syracuse, Salerno, Anzio, Naples, Taranto (map4_italy.html)
  5. Supporting Liberation and Home Base — Cherbourg (post D-Day) and Belfast (map5_northern_europe.html)

A concluding section ties the journey together.

The page also features a photograph of the actual hammock spreader bar, hosted on Vercel Blob, rendered using ShimmerImage.

Key Concepts

  • Spreader bar: The wooden bar from the grandfather's naval hammock, inscribed with place names — the primary artefact and source data for the project
  • Convoy escort: The Royal Navy's critical role protecting transatlantic supply convoys; the Battle of the Atlantic was the defining naval campaign
  • Operation Torch: Allied invasion of French North Africa (November 1942) — many of the mapped locations were part of this campaign
  • Operation Husky: Allied invasion of Sicily (July 1943), reflected in the Italian maps
  • Scattergeo: Plotly's geographic scatter plot module used to create the interactive maps

Thematic Clusters

  1. Family Memory: The project is rooted in a personal family artefact — a physical object carrying handwritten history
  2. Naval Campaigns: Each map section covers a distinct theatre of WWII operations the grandfather participated in
  3. AI as Historian: Google Gemini generated the historical commentary for each location, bridging personal and documented history
  4. Geography as Narrative: The maps tell a story through place — the progression from Atlantic convoys to Mediterranean operations to the liberation of Europe

Conceptual Vocabulary

  • Rendezvous (here: port visit): Each mapped location represents a port the grandfather's ship visited
  • Plotly / Scattergeo: Python-based mapping library used to generate the HTML map files
  • Lend-Lease: US programme supplying war materials to Allies; context for the US East Coast ports
  • Beachhead: Secured landing area (Anzio, Salerno) — key concept in the Italian campaign narrative

Related Projects

  • Reconstructed War Memorials: Another project dealing with war, memory, and geography — uses Leaflet maps rather than Plotly
  • Roads: Shares the interactive HTML embed pattern for mathematical visualisations
  • The Ancestor's Insta: Both projects blend personal/ancestral history with interactive digital presentation

Agent Guidance

When discussing A Sailor's War:

  • Lead with the personal story: The spreader bar is the emotional anchor — a grandfather's handwritten record on a hammock. This isn't abstract history; it's family memory
  • Respect the subject matter: This covers real wartime service. Maintain a thoughtful, respectful tone
  • Mention the five maps: Each covers a distinct campaign theatre; visitors can explore individual ports with hover tooltips
  • Technical highlights: Maps generated in Python with Plotly Scattergeo and exported as static HTML, embedded via iframes; commentary generated by Google Gemini; Python script available as a public Gist
  • Common questions: "Was your grandfather at D-Day?" (Cherbourg suggests involvement in post-D-Day operations), "How were the maps made?" (Python/Plotly, exported as HTML), "Are the locations accurate?" (transcribed from the physical spreader bar)
  • Avoid: Over-simplifying the historical context; treating the AI commentary as primary-source history
← Back to home