A compact Berlin city guide we built in studio hours for the people we keep sending there — friends, contractors, new colleagues. We publish it as a values piece: proof of how we treat taste, locality and quiet usefulness as engineering concerns. It doesn't compete with TripAdvisor; it's a slim, hand-curated companion to a city part of our team knows street by street.
Why we built it
A self-initiated, self-funded side project — built in studio hours, with no client brief.
Part of our team has deep roots in Berlin, and every few months someone we like moves there. Sending them screenshots from a notes app felt wrong. So we built a small guide holding only the places we'd genuinely recommend — quiet hours, late libraries, swim spots, slow food, off-tourist districts — behind a calm interface that never shouts.
What we wanted it to be:
- Hand-curated by the team, not generated or scraped — the places we'd send a friend to.
- Honest about scale — narrow on purpose, not trying to cover everything.
- Privacy-respecting by default, because that's how we'd want to use it ourselves.
- Offline-friendly and edge-cached, so it works on the U-Bahn and at the lake.
- Designed with typography and quiet rhythm, not infinite-scroll spam.
We publish it as a values piece — a window into how we think about taste, locality and quiet usefulness — not as a commercial reference.
What we wanted to avoid
City guides usually try to cover everything for everyone. We went the opposite way: A short, opinionated guide that reads like a friend's annotated map, not a directory. No paid listings, no ad slots, no affiliate links, no algorithmic ranking — only places the team actually likes. A few rules we set for ourselves. The guide should:
- stay small and hand-curated — quality over coverage
- feel like a Berlin object, with typography and palette to match
- respect privacy by default — no invasive tracking
- work offline and load fast on a phone deep in a subway tunnel

How we built it
1 — Stack & craft
A deliberately light technical setup for a small, slow-changing guide. Next.js with edge caching, plus a small Supabase backend covering:
- Optional sign-in for saving places (Apple / Google)
- A small Postgres for the curated place list
- Row Level Security so saved lists stay private
- File storage for hand-picked imagery
A few quiet integrations: • Map tiles for navigation and walking directions • Anonymous, privacy-friendly analytics — no personal identifiers • A local offline cache, so the guide keeps working with no signal
2 — The places
Every entry comes from the team. No bots, no scrapers, no mass import. Each place carries:
- A district and a category (food, swim, library, walk, drink, quiet)
- A short note in plain language — why we like it, when to go
- A visual cue tied to the kind of place, not a brand
- A map pin and walking-time hint
- A reviewed-on date — we revisit the list once a year
About 80 hand-picked places across 6 districts, re-reviewed by the team once a year.
3 — Design taste
The interface aims for the feel of a small printed object — calm, typographic, easy to put down:
- A quiet palette that's easy on tired eyes
- Generous whitespace — no infinite scroll, no dark patterns
- Typography tuned for reading short notes rather than skimming a feed
- Tiny, soft transitions; the guide never demands attention
It reads closer to a zine than a city app — slow, considered, affectionate about its city.

What's actually in it
- Quiet hours and off-tourist corners of districts the team knows well
- Late libraries and reading rooms we actually use
- Swim spots — lakes, pools, and the river when it behaves
- Slow food, neighborhood bakeries, and unhurried cafés
- Independent bookshops, small galleries, and quiet cinemas
- Transit hacks and walking routes that beat the obvious ones
- A short after-dark list we'd trust with a good friend
The guide stays small on purpose. No ads, no affiliate links, no paid listings. We use it ourselves whenever friends, contractors or new hires land in the city — and we're glad if anyone else finds it useful.
How it's used
- A quiet shared link the team sends to friends and colleagues moving to Berlin
- About 80 hand-picked places across 6 districts, reviewed annually
- Used internally when onboarding new hires landing in the city
- Offline-friendly — works underground, at the lake, on weak café Wi-Fi
- A craft testbed for typography, edge caching, and calm interface ideas
Tech notes
Mobile: Next.js · React
Backend: Supabase (small, mostly read)
Analytics: Anonymous, privacy-friendly
Maps: Lightweight map tiles
Auth: Optional Apple / Google sign-in
Deployment: Edge-cached, offline-friendly



