Onboarding

Outreach · Contributor guide

Outreach Guide

How we track contact with the current occupants of former Jewish business addresses in Berlin, as part of the memorial plaque program — the status pipeline, the research workflow, and the tone every message has to keep.
01

The pipeline

Every address moves through a status pipeline. Update the status every time you touch a record — the tracker is only useful if it reflects reality.

The main path
Not startedResearchingContactedAwaiting responseInterestedApproved
Where it can branch off
Follow-up neededDeclinedNot applicable

An unanswered record falls back to follow-up needed and re-enters the path. Declined and not applicable are terminal.

StatusMeansYour next action
not_startedNobody has looked at this addressResearch the current occupant
researchingIdentifying the occupant and contact informationFill in the occupant and contact fields
contactedFirst outreach sentSet first_contact_date, log the channel in the notes
awaiting_responseWaiting on a replySet next_follow_up_date, roughly two weeks out
follow_up_neededThe follow-up date passed with no replySend the follow-up, then re-date it
interestedPositive response, not yet committedSend the plaque details, arrange the next step
approvedThe occupant agreed to a plaqueHand off to plaque production
declinedThe occupant said noLog the reason in the notes. Do not contact them again
not_applicableBuilding demolished, vacant, or no viable contactLog why, so nobody repeats the search

Interest level — high, medium, low, none, unknown — is separate from status. Use it to prioritise follow-ups.

02

Research workflow

Use Research Mode — the button in the tracker header — to step through not_started records one at a time. For each address:

  1. Find out who is there now

    Look the address up on Google Maps or OpenStreetMap. Who occupies it today?
  2. Describe the occupant

    Fill in current_occupant_name, current_occupant_type — business, residential, office, public, vacant or demolished — and property_type.
  3. Find a way to reach them

    contact_email, contact_phone, contact_website, and a named contact_person wherever one can be found.
  4. Record where it came from

    Set data_source to one of google_maps, osm, manual_research, site_visit, phone_call or website.
  5. Move the status

    researching while the record is incomplete, contacted once outreach has actually been sent.
03

Contact guidelines

  • Lead with the mission: memory, education, neighbourhood history.
  • Be concrete about the plaque: size, placement, and the cost to them — which is none.
  • Two follow-ups, then stop: one after about two weeks, a second after about four, and no more unless they respond.
  • Log every interaction in outreach_notes, with a date prefix.
  • A declined is final. Respect it.
A note entry looks like this
2026-08-09: Called, spoke with office manager, sending info PDF.
04

Data hygiene

  • Dates go in date fields in ISO format — YYYY-MM-DD.
  • Notes are append-only. Never delete history; add new lines on top.
  • Export a CSV backup — the Export button, or /api/outreach/export — before any bulk edit.
  • Never commit personal contact data to the public repo beyond what the tracker’s data store already holds.
05

Weekly rhythm

Small consistent batches beat heroic sprints. Five to ten addresses in a session is a good week.

  1. Check the stats bar

    Open the tracker. The follow_up_needed count is your queue.
  2. Clear the follow-ups first

    Then continue research on not_started records.
  3. Report back

    Note blockers or interesting responses on the project task board — see the task tracking guide.
06

Where the code lives

The tracker lives at /admin/outreach. Both the page and the underlying /api/outreach endpoints are password-gated server-side — ask the maintainer for access.

PiecePath
UIsrc/app/admin/outreach/page.tsx and src/app/components/outreach/
APIsrc/app/api/outreach/ — data and CSV export
Data modelsrc/lib/types/outreach.ts
Source listOutreach/Jewish Business Outreach - For Json.csv