About this travel project
How I research a trip, where the notes and photos come from, and how privacy, data, and credits work on this personal travel project.
Published April 2026. Updated July 2026. Mike Lee.
I have kept travel notes for years because the practical details do not survive in chat threads or scattered Google Maps pins. Where the food was actually good. Which neighborhood made sense for a one-week stay. Which day-trip was worth two trains. Whether a saved place looked better on a map than it did in person.
This site is the public version of that working system. It is not a guidebook. It is closer to a notebook from a traveler who plans deliberately, walks when the city allows, takes public transit as a practical tool, and books a taxi when that makes more sense.
Some pages are polished travel writing. Some are still structured notes with facts, photos, and saved places waiting for better prose. I would rather show the state of the notebook honestly than make every page sound finished before it is useful.
The four sources I cross-reference
The atlas grows from four streams. They do not blur on the page. A pin can come from any of them, and the cross-product is what makes a city like Barcelona or Cape Town more useful here than in any one of the sources alone.
Google Maps saved lists
Every Bangkok food list, every Seville café shortlist, every Lisbon viewpoint pile sits as a private saved list inside my Google Maps account. I export them through Google Takeout and import each list into the atlas as a curated collection. The Lists section is the home for these. Most lists mirror a real planning thread, not a general-interest collection.
Atlas Obscura history
When I review an entry on Atlas Obscura, their site records it. The atlas pulls that history in: every pin tagged “Atlas Obscura” here is one I have actually shown up to. The chip is not an aspirational filter. It is the intersection of their catalogue with the places I have been.
UNESCO World Heritage tracking
I track UNESCO sites I have visited as I go. Each pin with a UNESCO ID carries the canonical number in the Facts card, and the link goes to the official UNESCO page. The “visited” flag on those pins is meaningful: it marks a real visit, not a drive-past.
Michelin Guide restaurants I have eaten at
When the budget allows, I make a point of eating at Michelin Guide restaurants in the city. Bib Gourmand entries get visited more than starred ones for the obvious reason. The atlas only carries Michelin entries I have actually eaten at, with the personal review and price tier filled in. The rest of the Michelin universe is intentionally absent until I get there.
A city page like Cape Town surfaces the Google saved list, any Atlas Obscura sites I have logged, the UNESCO sites in or near it, and the Michelin restaurants I have eaten at, all at once. That cross-section is the planning artifact, not the prose around it.
How to read a city page
A good city page should help you decide whether the place belongs in a trip, not decorate it with travel language. The About section gives the orientation: what the city is like today, what history still shapes it, and how it actually works once you are there.
The Why Visit section is about culture, architecture, landscape, food, music, museums, books, neighborhoods, and nearby routes. The When to Avoid section is blunt by design. Crowds, pickpockets, scams, air pollution, difficult weather, weak transit, and disappointing tourist zones are part of the decision and belong on the page.
Barcelona is not just a Gothic Quarter and Gaudí checklist. It is also beaches, commuter rail, wine country, Montserrat, day trips to Sitges, and the practical reality of pickpockets in the center. The page is meant to help someone plan around both truths without flattening either.
Maps, lists, and pins
Travel planning is spatial. A place that looks essential in a list is sometimes awkward once you see where it sits on the map. The country globe shows the broader atlas. The pin map shows museums, gardens, restaurants, historic sites, stations, viewpoints, UNESCO places, saved ideas, and pins I have actually visited.
The saved-list section on a city or country page surfaces anything I keep in a Google Maps list named after that place. A list can become a city research page, a food shortlist, a day-trip cluster, or a reminder that something was saved years ago and still needs a second look.
Sources and judgment
The first source here is my own record: photos I took, places I pinned, lists I kept, ratings I gave, and notes I wrote after actually using the city. That is the spine of the project. Outside data fills in context around it.
Public reference data comes from Wikidata, Wikipedia, NASA POWER, OpenStreetMap, UNESCO, the Atlas Obscura catalogue, the Michelin Guide, and other open or cited sources. The provider registry is on the credits page with terms and licenses noted where they apply.
Those two kinds of information should not get confused on a page. A population figure is a reference fact. Whether a place is worth building a trip around is a judgment, and it should explain itself.
I expect the site to keep changing. Hours, prices, airline rules, visa policies, and safety conditions move faster than a personal site can guarantee. Treat this as a well-kept notebook and check the live source before booking.
Privacy and data
This is a personal project, not a growth funnel. There are no accounts, ads, sponsored placements, affiliate links, email signups, or public comment forms. I use analytics to understand what loads slowly and what people actually read.
Google Analytics runs only after cookie consent. Vercel Analytics and Speed Insights help catch real-world performance issues. Supabase request logs cover server-side database operations, not reader profiles. The longer version lives on Privacy and data.
Photos and credits
Most photos, reviews, ratings, and practical notes are mine. Personal photos lead whenever I have them. Photo-less city pages use a coordinate graphic instead of an outside photograph. Public images that remain on the site keep their own credit and license.
The current source list is on Sources and credits. If a credit is missing or a photo includes you and you would rather it not, message me and I will fix or remove it.
Stack and hosting
I use this project partly to test ideas for my professional career. The architecture choices, the editorial tone, the data pipeline, the way structured fields meet personal prose: these are problems I think about in my day job and the site is where I practice them in public.
| Component | Implementation |
|---|---|
| Framework | Next.js 15 with React 19 and TypeScript |
| Data | Supabase Postgres |
| Images | Personal photos in Supabase Storage, with licensed public images only where retained |
| Maps | MapLibre GL with OpenStreetMap tiles |
| Climate | NASA POWER and Open-Meteo |
| Structured facts | Wikidata, Wikipedia, curated overrides |
| Hosting | Vercel |
| Repository | GitHub |
Pull the notes into Claude
The atlas runs a read-only MCP server at https://go.mike-lee.me/mcp. Add the URL to Claude Desktop, Claude Code, Cursor, or any other MCP client and thirteen atlas_* tools become available in your session. The model can pull a guide, list day-trips, look up a pin, fetch a country profile, read an article, browse a topic hub, or search the atlas without leaving the chat.
The full notebook is reachable through MCP, including the drafts that are not yet on the public website. Each response is tagged with a status attribute (published or draft) so the calling model can warn the user before quoting unfinished prose. The server is anonymous, no auth, no signup. Responses are wrapped in a provenance envelope so the model recognizes the content as third-party-authored. Rate-limited to keep one bad client from drowning out the rest.
Discovery manifest sits at /.well-known/mcp.json for clients that probe for it. The same notes the city pages render, available in the chat where the trip is actually being planned.
If something needs fixing
If a fact is wrong, an attribution missing, a review unfair, or a photo includes you and you would prefer it not, message me on LinkedIn (opens in a new tab). The reviews are my own and I am happy to clarify how I arrived at one. There are no comments here on purpose. A direct line is the way to reach me.