Overview of tool

⚡ The Problem & Why It Mattered To Me

I spent my yearlong travel sabbatical using Polarsteps to journal my thoughts, photos and location each day. When I got back, I wanted to keep those memories safe in a format I could still open 10, 20, 30 years from now. Most apps don’t last that long. So I requested my data from Polarsteps. What I got were JSON files, packed with deeply nested lists that were anything but user-friendly. That’s when I decided to write this script, to pull out the journal entries and turn them into something more usable. And of course, I went the little extra mile to plot the countries I travelled to on a map 😊.


⚡ TL-DR

A single Python script that:

  1. Extracts every journal entry & location from Polarsteps’ export.
  2. Saves them as future proof text files (one per entry + monthly & full year DOCX).
  3. Plots the entire route on an interactive Plotly map served with Dash.

Run it once, get a clean archive, no copy paste.


🛠️ Approach (data flow)

Polarsteps Export └─ locations.json + trips.json

Python parser

Output 1: Text Files of Journal Entries
Output 2: Plotly Travel Map

Core libraries: json, pandas, plotly, dash, python-docx


📚 Things I Learned

  • Taming nested JSON with list comprehensions.
  • First hands-on with Plotly Express & Dash for quick web visuals.

🤯 Most Challenging

Nested JSON felt like Russian doll chaos, every list hid another list.
I eventually learned about list comprehension which flattened the mess without 100 lines of loops.


🚀 If I Had Infinite Time…

  • Add a slick basemap (e.g., satellite or watercolor style) so the plotted route sits on more eye catching background tiles.
  • Animate the journey so the path “replays” day by day.

🐙 Full code on GitHub here.