CASE STUDY / MEMORIAL APP

Designing a Memorial App for Holocaust Stolpersteine

Memorial App · Netherlands & Belgium · 15,500 victim profiles · 12,000+ downloads · Sole designer

Three screens of the Stolpersteine app: a victim profile with name, dates and age at death, his written story, and the walking route to his stone

CLIENT

Stichting 18 September

PARTNERS

Fontys ICT · Netwerk Oorlogsbronnen

DOMAIN

Memorial · Mobile (iOS + Android)

PERIOD

2024

TEAM

6-person product team (1 designer)

TYPE

Pro bono · Social impact

RECOGNITION

Joe Cattini Local Hero Award 2024

STATUS

Live in production since June 2024

TL;DR

Mobile app for memorial network

A mobile app for the Holocaust Stolpersteine memorial network in the Netherlands and Belgium — small brass plaques in front of the last homes of Nazi-persecution victims. The client had spent a decade digitising 15,500 victim stories but had no public way to surface them. As the only designer on a six-person product team, I owned discovery, UX, UI, brand identity and product decisions end-to-end.

This case is about the design and product decisions I made along the way: how to surface a 15,500-entry dataset on mobile, how to handle UGC contributions safely, how to apply GDPR to a memorial database, and how to make product calls without a PM.

Two brass Stolpersteine set into cobblestones, engraved with the names and fates of victims

RESULTS

What it became.

DOWNLOADS

12,000+

App Store + Google Play · no marketing budget

DAILY ACTIVE USERS

~100

sustained 2 years post-launch

USER CONTRIBUTIONS

500+

stones added via UGC flow in first months

RECOGNITION

Joe Cattini Local Hero Award 2024

Eindhoven · 2024

An annual recognition by the city of Eindhoven for contributions to peace, freedom and tolerance. Previous recipients have been community initiatives and individuals — the Stolpersteine app was the first digital product to receive it.

Joe Cattini Local Hero Award 2024: the certificate presented in Eindhoven, and the glass award

Two years on, the app continues to operate in production — daily users stable, contributions still arriving, dataset still growing. Discussions underway with partner organisations in Germany about consolidating fragmented local Stolpersteine apps onto this platform.

01 — CONTEXT

15,500 names. No way to find them.

A Stolperstein — “stumbling stone” — is a small brass plaque set into the pavement in front of the last freely-chosen home of a victim of Nazi persecution. The Netherlands and Belgium hold thousands of them. The client, Stichting 18 September, had spent a decade digitising 15,500 victim stories — but the data lived behind an internal interface, invisible to visitors standing on the actual stones.

The brief was open: surface the dataset. The constraints were sharp: pro bono, no analytics budget, no PM. Four audiences with incompatible needs — passers-by who don’t know what the stones are, descendants searching for a specific name, educators bringing groups, researchers cross-referencing archives.

From a cold dataset accessible only to curators to a memorial layer findable in the city: rows of victim records next to the app’s map of stones in Eindhoven

CONSTRAINTS

Pro bono delivery. No analytics infrastructure. No A/B testing budget. No PM — product decisions ran alongside design. Rigor had to come from explicit early decisions about scope, ethics, and what the product would not do.

02 — MY ROLE

Sole designer, full product surface.

LED

Discovery (interviews with the client and users — visitors, descendants, educators) · persona modelling · information architecture for a 15,500-entry dataset · full UX and UI for every flow — map, victim profile, search, contribution, onboarding, localisation · brand identity and app icon · product decisions on scope and prioritisation.

WITH THE TEAM

Five developers directly (no PM, so I ran product calls alongside design) · the client lead as de facto product owner · Netwerk Oorlogsbronnen for upstream data structure · an external advisor on GDPR/AVG.

03 — KEY DECISIONS

Seven calls that shaped what the app respects.

Map-first: the map opens centred on the user, a tap reveals a quiet card with name and dates, and the full story unfolds in two taps from home Narrative-first profile: the name comes first and large, the story is written rather than listed, and the page leads to the street Two-tier visibility on one profile: wrong — living relatives named by default; right — the historical record stays public and references to living people are anonymised

04

DECISION

UGC contribution: open the door, guard the threshold

The database had to stay alive — new stones, corrections, family photos — but the contribution surface is unusually sensitive. Every submission requires a source, contact email, and explicit consent. Nothing publishes automatically; client reviews and merges. Mandatory source-attribution is intentional friction — filters casual edits while staying welcoming to descendants with real material.

Contribution flow: an invitation on a profile without a photo, capture on location, then source, contact and consent required before review

05

DECISION

Onboarding for the uninitiated

Audience splits sharply — descendants and educators know what Stolpersteine are; accidental visitors don’t. First launch shows a single sentence, a visual of the brass plaque, and two actions — “show me the nearest stones” or “search by name.” Skippable; re-accessible from settings.

Onboarding: a brass stone on cream at launch, one sentence with two paths — nearby stones or search — and the introduction available again from settings

06

DECISION

Multi-language: localise the interface, not the history

App serves Dutch, French, English, German, and Hebrew speakers — but historical content (1940s place names, camp names, victim names) doesn’t translate cleanly. Interface chrome translated fully. Historical proper nouns stay in their original form, with a short annotation where context is needed — never replacing it.

The same profile in English, Dutch and French: the interface translates, while camp and place names stay in their original form

07

DECISION

Working with a non-product-fluent client

Client team are historians and archivists. Standard design-review formats (wireframes, click-throughs) didn’t get useful responses. Reframed reviews as “this is what a granddaughter sees when she searches for her grandmother — does this feel right.” Decisions tied back to specific user moments. The client lead became a fast, decisive partner on direction, hands-off on UI choices. Faster decisions and a design that held its integrity.

04 — ARTIFACTS

Created artifacts

01

Figma flows

Map, victim profile, search, contribution (UGC), onboarding, localisation, settings

Flows in Figma

02

Interactive prototype

High-fidelity prototype covering primary user journeys

Prototype in Figma

03

Personas + journey maps

Four personas: passer-by, descendant, researcher, contributor

Google Docs and Figma

04

Brand identity

App icon, type system, colour system anchored on the brass of the stones

Figma

05

Live app

Stolpersteine App — App Store and Google Play

App Store and Google Play

06

Award + press

Joe Cattini Local Hero Award, Studio 040, Eindhovens Dagblad, Fontys

Award

05 — KEY INSIGHT

Design ethics aren’t a constraint on the work — they are the work.

Every typography choice, every information hierarchy, every UGC validation rule was an ethical decision at the level of “does this specific screen treat this specific person with dignity.” The skill is recognising what each product owes the person on the other end of the screen — and letting that shape the design from the first wireframe, not bolting it on at the end.

WHAT CARRIES FORWARD INTO B2B WORK

The skills built on this case map directly onto enterprise problems.

IA for 15,500 entries

Data-heavy interfaces with thousands of records, deep filtering, multi-entity navigation

UGC moderation

Trust & safety, admin and moderation surfaces in platforms where one user’s input affects others’ data

GDPR-aware design

Privacy-by-design in enterprise products handling personal data

Two-audience onboarding

Multi-persona onboarding in technical platforms with mixed user expertise — carried directly into the onboarding redesign case

Working with domain experts

Working with operations teams, compliance officers, legal teams — people who know the problem deeply but don’t speak the language of product

06 — REFLECTION

What I’d do differently.

01

Set up analytics from day one

We tracked downloads and rough daily-active numbers, but didn’t instrument the contribution funnel, search patterns, or onboarding drop-off. With proper analytics, the iteration loop after launch would have been sharper.

02

Document the privacy model formally

We made the right calls on AVG with strong external guidance, but those decisions live mostly in my head and in design files. For European expansion (Germany has different rules), that thinking needs to be a written policy that survives a team handover.

NEXT CASE

CASE 04 / 05

Onboarding case — one editor with a visual start and a technical start

05

Onboarding Redesign for Two Personas in a Single Interface

Onboarding rebuilt for two opposite user types in one interface — completion 54% → ~90%.

B2B SaaS · 2025–2026