Maayan Kedem Bhonkerמעיין קדם בהונקר

UX/UI case study · October 2026קייס סטדי UX/UI · אוקטובר 2026

An end to election spamסוף לספאם הבחירות

Replying “הסר” (“unsubscribe”) doesn’t always get a number off a party’s list. A free page turns it into a legal deletion demand. Built within four days, before the election.

לא תמיד תשובת “הסר” באמת מורידה מהרשימה של המפלגה. דף חינמי הופך אותה לדרישת מחיקה חוקית. נבנה תוך ארבעה ימים, לפני הבחירות.

Day theme, the opening: a voter flooded with message bubbles, the handwritten question and the answer “גם לנו.”
Night theme, the send-to-all sequence: email 4 of 13, with three lists already marked sent.
☀ Day · the opening☀ יום · הפתיחה ☾ Night · the sequence☾ לילה · הרצף
Roleתפקיד
UX · UI · copywriting · microcopy · video direction · social media marketing · ongoing user research
UX · UI · קופירייטינג · מיקרו-קופי · בימוי סרטונים · שיווק ברשתות החברתיות · מחקר משתמשים מתמשך
Teamצוות
Maayan Kedem Bhonker, Nadav Bhonker, Claude Code
מעיין קדם בהונקר, נדב בהונקר, Claude Code
Timeזמן
19–25 Oct 2026
19–25 באוקטובר 2026
Languagesשפות
Hebrew · English · Arabic
עברית · אנגלית · ערבית
20 seconds20 שניות

The whole flowכל הזרימה

A real run on the live page, made as a launch video. Party names are blurred.

ריצה אמיתית על האתר החי, שנעשתה כסרטון השקה. שמות המפלגות מטושטשים.

  1. Pick a listבוחרים רשימה
  2. The email opens, readyהמייל נפתח מוכן
  3. Confirm. Done.מאשרים. זהו.
Problemבעיה

After “הסר”, the messages often keep coming, and party messages are exempt from the spam law.

גם אחרי “הסר”, ההודעות ממשיכות להגיע הרבה פעמים, והודעות של מפלגות פטורות מחוק הספאם.

Solutionפתרון

A letter under Section 17F(b) to each of 13 lists, sent from your own email.

מכתב לפי סעיף 17ו(ב) לכל אחת מ-13 רשימות, שנשלח מהמייל שלכם.

My partהחלק שלי

UX, UI, every word, the videos, the user research. Designed directly in code.

UX, UI, כל מילה, הסרטונים, מחקר המשתמשים. עיצבתי ישר בקוד.

Ongoing user researchמחקר משתמשים מתמשך

Six real-world failures in two days. All fixed before launch.

שש תקלות מהשטח ביומיים. כולן תוקנו לפני ההפצה.

The week, as a work planהשבוע, כתוכנית עבודה

19.10Monב׳20.10Tueג׳21.10Wedד׳22.10Thuה׳23.10Friו׳24.10Satש׳25.10Sunא׳26.10Monב׳27.10voteבחירות
Register, polls, 17Fרשם, סקרים, 17ו
Lists, send-to-all, Outlookרשימות, שליחה לכולן, OutlookOne send buttonכפתור שליחה אחד
Palette, type, gridפלטה, פונטים, רשתOpening, backgroundsפתיחה, רקעיםSpacing, cardsריווח, כרטיסים
Brief, character, bubblesבריף, דמות, בועות
“Section 17”“סעיף 17”Renamed הסר!השם “הסר!”
Five languages, copy passחמש שפות, סבב טקסטיםProofreadingהגההArabic signed offערבית אושרה
Statement, legal noticeהצהרה, הבהרה משפטיתWordingנוסח
Friends test it: six fixesחברים בודקים: שישה תיקוניםDay-one numbersנתוני יממה ראשונה
Launch, videosהשקה, סרטונים
Research and dataמחקר ונתוניםUXUXUI and illustrationUI ואיורName, copy and languagesשם, טקסטים ושפותAccessibility and legalנגישות ומשפטיLaunchהשקה
01
The problemהבעיה

A reply that doesn’t always landתשובה שלא תמיד עובדת

1

“הסר” doesn’t always stop it.Often the messages keep coming.

“הסר” לא תמיד עוצר.הרבה פעמים ההודעות ממשיכות להגיע.

2

The spam law doesn’t apply.Political messages are exempt.

חוק הספאם לא חל.תעמולה פוליטית פטורה.

3

But Section 17F(b) does.Anyone can demand deletion. The party has 30 days. Almost nobody knows.

אבל סעיף 17ו(ב) כן.כל אחד יכול לדרוש מחיקה. למפלגה יש 30 יום. כמעט אף אחד לא יודע.

No such tool existed, in English or Hebrew. The closest, Phisherman, only hides SMS.

כלי כזה לא היה קיים, גם לא בעברית. הכי קרוב, Phisherman, רק מסתיר SMS.

02
Decisionsהחלטות

Seven decisions, and what each costשבע החלטות, וכמה כל אחת עלתה

Each one: the screen before and now, side by side, and what changed on it.

בכל אחת: המסך לפני ועכשיו, זה לצד זה, ומה השתנה בו.

1

Which lists to send toלאילו רשימות שולחים

Beforeלפני

All 199 parties in the official register

כל 199 המפלגות ברשם הרשמי

Weighingשיקולים
  • Most registered parties never run, and never message anyone
  • A long list buries the parties that do
  • A joint list messages as one
  • רוב המפלגות הרשומות לא מתמודדות, ולא שולחות הודעות לאף אחד
  • רשימה ארוכה מסתירה את אלה ששולחות
  • רשימה משותפת שולחת כגוף אחד
Cost:a small party could be missingהמחיר:מפלגה קטנה עלולה לחסר
Nowעכשיו

13 lists that pass four seats in at least one poll. Joint lists are one row. Ordered by polls: statistics, not opinion.

13 רשימות שעוברות 4 מנדטים לפחות בסקר אחד. רשימה משותפת היא שורה אחת. מסודרות לפי הסקרים: סטטיסטיקה, לא דעה.

2

One email per listמייל אחד לכל רשימה

BeforeלפניDay 1: tick the lists, one email to all of themיום 1: מסמנים רשימות, ומייל אחד לכולן

  1. One row, one list, one personal letter. Harder to dismiss as a mass mailing.שורה אחת, רשימה אחת, מכתב אישי אחד. קשה יותר לבטל אותו כדיוור המוני.
  2. A row is marked only when it’s tapped, so nothing looks chosen in advance.שורה מסומנת רק כשלוחצים עליה, כך ששום דבר לא נראה כאילו נבחר מראש.
  3. For everyone else: “send to all”, one after another.ולכל השאר: “שליחה לכולן”, אחת אחרי השנייה.
Cost:13 emails instead of oneהמחיר:13 מיילים במקום אחד
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
3

A guided sequenceרצף מודרך

BeforeלפניA send button on every row: 13 trips, aloneכפתור שליחה בכל שורה: 13 יציאות, לבד

  1. Where you are: email 4 of 13.איפה נמצאים: מייל 4 מתוך 13.
  2. One tap marks this list sent and opens the next email.לחיצה אחת מסמנת את הרשימה כנשלחה ופותחת את המייל הבא.
  3. A progress meter, and a different cheer each time.מונה התקדמות, וחיזוק אחר בכל פעם.
Cost:still 13 trips to the mail app, so the return is designedהמחיר:עדיין 13 יציאות לאפליקציית המייל, אז מעצבים את החזרה
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
4

Giving up Outlook on Windowsויתור על Outlook בווינדוס

BeforeלפניThree buttons on every row: send, Gmail, copyשלושה כפתורים בכל שורה: שליחה, Gmail, העתקה

  1. The mail app. On Windows, Gmail instead: Windows cuts mail links at about 2,000 characters, silently.אפליקציית המייל. בווינדוס, Gmail במקומה: וינדוס קוטע קישורי מייל בכ-2,000 תווים, בשקט.
  2. Copy the letter: a safety net that always works.העתקת המכתב: רשת ביטחון שתמיד עובדת.
  3. Asked once per visit, then remembered through the sequence.שואלים פעם אחת בביקור, והבחירה נזכרת לאורך הרצף.
Cost:no default mail app on Windowsהמחיר:אין תוכנת מייל רגילה בווינדוס
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
5

Send without detailsשליחה בלי פרטים

BeforeלפניValidation blocked the letter until every field was rightבדיקת שדות חסמה את המכתב עד שכל שדה היה תקין

  1. Explains instead of blocking.מסביר במקום לחסום.
  2. Continue anyway: the email opens with blanks to fill in.להמשיך בכל זאת: המייל נפתח עם מקומות ריקים למילוי.
  3. Or go back and fill in. The ID is optional and never stored.או לחזור למלא. תעודת זהות אופציונלית ולא נשמרת.
Cost:some letters go out with a blankהמחיר:חלק מהמכתבים יוצאים עם מקום ריק
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
6

The letter is always Hebrewהמכתב תמיד בעברית

BeforeלפניA Hebrew letter, and nothing elseמכתב בעברית, ותו לא

  1. The letter itself stays in Hebrew, so no party has an excuse.המכתב עצמו נשאר בעברית, כדי שלאף מפלגה לא יהיה תירוץ.
  2. Beside it, a translation for the reader: English or Arabic, proofread by native speakers.לידו, תרגום לקורא: אנגלית או ערבית, עם הגהה של דוברי השפה.
Cost:a letter the sender may not read, so the translation has to be clearהמחיר:מכתב שהשולח אולי לא קורא, ולכן התרגום חייב להיות ברור
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
7

Measuring, on a privacy productמדידה, במוצר של פרטיות

BeforeלפניOnce marked sent, no way back, and no way to knowאחרי “נשלח” אין דרך חזרה, ואין דרך לדעת

  1. Sent, with the date.נשלח, עם התאריך.
  2. “Bounced? Unmark”, counted anonymously per list: broken addresses surface fast.“המייל חזר? ביטול הסימון”, נספר אנונימית לכל רשימה: כתובות שבורות מתגלות מהר.
Cost:one outside script, disclosed: no cookies, no IP, nothing from the formהמחיר:סקריפט חיצוני אחד, בגלוי: בלי עוגיות, בלי IP, בלי שום פרט מהטופס
Drag the divider to compare.
גוררים את המחיצה כדי להשוות.
03
Iterationsאיטרציות

Before → afterלפני ← אחרי

The opening of the page through the week, step by step. Each screen is the real page, rebuilt from git. Scroll sideways.

פתיחת הדף לאורך השבוע, צעד אחר צעד. כל מסך הוא הדף האמיתי, ששוחזר מ-git. אפשר לגלול הצידה.

19.10
A legal form, 19.10
A legal form; by evening, five languagesטופס משפטי; בערב, חמש שפות
20.10
UI pass: palette, Rubik, Karantina, 20.10
UI pass: palette, Rubik, Karantinaסבב עיצוב: פלטה, רוביק, קרנטינה
20.10
A bigger, louder opening, 20.10
A bigger, louder openingפתיחה גדולה ורועשת יותר
21.10
The handwritten question, 21.10
The handwritten questionהשאלה בכתב יד
21.10
A first illustration, bubbles in code, 21.10
A first illustration, bubbles in codeאיור ראשון, בועות בקוד
25.10
Launch, 25.10
The real illustration, the new name: launchהאיור האמיתי, השם החדש: השקה
04
Visual languageשפה חזותית

A visual language of protestשפה חזותית של מחאה

Official enough to trust with a legal letter, loud enough to feel like a stand.

רשמי מספיק כדי לסמוך עליו עם מכתב משפטי, רועש מספיק כדי להרגיש כמו מחאה.

Flag blueכחול דגל#0038B8
Marker yellowצהוב מרקר#FFC72C
Navy inkכחול-לילה#0B1B3A
Skyתכלת#DCEEFB
Paperנייר#F7F8FC

גם לנו.

Karantina · the answerקרנטינה · התשובה

נמאס לך?

Playpen · the handwritten questionפליפן · השאלה בכתב יד

שליחה לכולן

Rubik · everything you read and tapרוביק · כל מה שקוראים ולוחצים

Accessible from the first lineנגיש מהשורה הראשונה

  • AA+ contrast, both themesניגודיות AA+, בשתי הערכות
  • Visible focus, live regionsפוקוס נראה, aria-live
  • Read-aloud in every languageהקראה בכל שפה
  • Reduced motion respectedכיבוד הפחתת תנועה
  • 8px grid, day and night by the clockרשת 8, יום ולילה לפי השעון
05
Ongoing user researchמחקר משתמשים מתמשך

Plan vs. realityתכנון מול מציאות

Research didn’t stop at launch. I put it in front of real users on 24–25 October, and the anonymous counts keep showing where it breaks. None of this showed on our own screens.

המחקר לא נעצר בהשקה. העמדתי את הדף מול משתמשים אמיתיים ב-24–25 באוקטובר, והספירה האנונימית ממשיכה להראות איפה הוא נשבר. שום דבר מזה לא נראה על המסכים שלנו.

The official register is right

Emails bounced: “merez” for “meretz”, no mail server

We fixed: The addresses, plus a “Bounced? Unmark” link counted per list

Check official data too
Line breaks just work

The letter arrived as one paragraph

We fixed: CRLF line breaks in every mail link

Some bugs need a real device
Animations are safe

On Brave mobile the content never appeared

We fixed: CSS-only motion that always ends visible

Motion is an extra, never a condition
Gmail works everywhere

Gmail on phones: 404

We fixed: Phones use the device’s mail app

A flaky option is worse than none
One cheer is enough

By list four it felt mechanical

We fixed: 12 different lines, a confetti finale

Microcopy wears out
People come back on the same browser

“Where’s the complaint after 30 days?”

We fixed: A permanent “No reply in 30 days?” link

Design for the person, not the browser
הרשם הרשמי מדויק

מיילים חזרו: “merez” במקום “meretz”, בלי שרת דואר

תיקנו: את הכתובות, ועוד קישור “המייל חזר? ביטול הסימון” עם ספירה לכל רשימה

גם נתונים רשמיים צריך לאמת
ירידות שורה פשוט עובדות

המכתב הגיע כפסקה אחת

תיקנו: ירידות שורה CRLF בכל קישור מייל

יש באגים שרק מכשיר אמיתי מגלה
האנימציות בטוחות

ב-Brave בטלפון התוכן לא הופיע

תיקנו: תנועה ב-CSS בלבד, שתמיד נגמרת בתוכן גלוי

תנועה היא תוספת, לא תנאי
Gmail עובד בכל מקום

Gmail בטלפון: 404

תיקנו: בטלפון נפתחת אפליקציית המייל של המכשיר

אפשרות שנכשלת לפעמים גרועה מאין אפשרות
חיזוק אחד מספיק

ברשימה הרביעית זה הרגיש מכני

תיקנו: 12 משפטים שונים, וסיום עם קונפטי

מיקרו-קופי נשחק
חוזרים מאותו דפדפן

“איפה התלונה אחרי 30 יום?”

תיקנו: קישור קבוע “לא ענו לכם תוך 30 יום?”

מעצבים לאדם, לא לדפדפן
Sent lists with the “Bounced? Unmark” link.
The finale with paper confetti: “Done! Every list got your deletion demand.”
The 30-day banner with a button that opens the complaint to the Privacy Protection Authority.
The permanent link “No reply within 30 days?” in the list header.

One more, found while making this case studyThe Arabic answer ran off narrow phones: its width was measured mid-animation, at 60%. Now measured at full size, and fixed live.

ועוד אחד, שנמצא תוך כדי הכנת הקייסהתשובה בערבית חרגה בטלפונים צרים: הרוחב נמדד באמצע האנימציה, ב-60%. עכשיו נמדד בגודל מלא, ותוקן באתר החי.

What we chose not to fixThe “open mail app?” prompt, and a mail window that won’t close itself. Those belong to the operating system.

מה בחרנו לא לתקןאת השאלה “לפתוח את אפליקציית המייל?”, ואת חלון המייל שלא נסגר לבד. אלה של מערכת ההפעלה.

06
Teamצוות

Who did whatמי עשה מה

MaayanNadavClaude Code
The idea
Data and legal research
Product decisions
UX: flows, popups, states
UI: palette, type, grid, motion
Illustration direction
Copywriting and microcopy
User research and its fixes
Video direction and social media
Writing the code and tests
מעייןנדבClaude Code
הרעיון
נתונים ומחקר משפטי
החלטות מוצר
UX: זרימות, חלונות, מצבים
UI: פלטה, טיפוגרפיה, רשת, תנועה
כיוון האיור
קופירייטינג ומיקרו-קופי
מחקר המשתמשים והתיקונים
בימוי סרטונים ורשתות חברתיות
כתיבת הקוד והבדיקות
Ledהוביל/הTook partהשתתף/ה

Why there was no Figma fileלמה לא היה Figma

A week before an election there’s no time for a design-file phase, so we worked in sprints, designing inside the product. With AI, anyone can build. Not everyone can do the thinking that decides what to build. I went deep only where it mattered, shipped, and iterated after real users.

שבוע לפני בחירות אין זמן לשלב של קובצי עיצוב, אז עבדנו בספרינטים ועיצבתי בתוך המוצר. עם AI כל אחד יכול לבנות. לא כל אחד יכול להעמיק בחשיבה שמחליטה מה לבנות. העמקתי רק במה שחשוב, שחררתי, ועשיתי איטרציה אחרי משתמשים אמיתיים.

What the tool didn’t doמה הכלי לא עשה

Choose what to build, what to give up, or how a sentence sounds. Or find the bounced emails, the one-paragraph letter, the hidden page. People did.

לא בחר מה לבנות, על מה לוותר, או איך משפט נשמע. ולא מצא את המיילים שחזרו, את המכתב בפסקה אחת, את הדף המוסתר. אנשים מצאו.

07
Outcomeתוצאה

Shipped in a weekיצא לאוויר בשבוע

withinתוך4

days to a working product

ימים למוצר עובד

13

lists, a letter each

רשימות, מכתב לכל אחת

3

proofread languages

שפות עם הגהה

0

servers, accounts, cookies

שרתים, חשבונות, עוגיות

Day oneהיממה הראשונה

The first day, in numbersהיממה הראשונה, במספרים

From the launch on Sunday morning, 25.10.2026 (WhatsApp status, an Instagram story and reel, X, Facebook, LinkedIn), to Monday 26.10.2026 at 09:55: about one day. Anonymous counts from GoatCounter; each figure is the number of visits that did it at least once.

מההשקה ביום ראשון בבוקר, 25.10.2026 (סטטוס בוואטסאפ, סטורי ורִיל באינסטגרם, X, פייסבוק ולינקדאין), עד יום שני, 26.10.2026, בשעה 09:55: בערך יממה. ספירה אנונימית מ-GoatCounter; כל מספר הוא כמה ביקורים עשו את זה לפחות פעם אחת.

7 of 97 מתוך 9

who started sending finished all 13

מבין מי שהתחילו לשלוח, סיימו את כל ה-13

≈ 1 in 7≈ 1 מכל 7

visitors sent a letter to every list (7 of 51)

מבקרים שלח מכתב לכל הרשימות (7 מתוך 51)

79%

came from a phone: designing mobile first was right

הגיעו מטלפון: ההחלטה לעצב קודם לנייד הייתה נכונה

10 / 2

sent with a mail app / with Gmail · 2 added the 30-day reminder

שלחו באפליקציית מייל / ב-Gmail · 2 הוסיפו תזכורת 30 יום ליומן

Where visits came fromמאיפה הגיעו הביקורים
57 Facebook, about halfפייסבוק, בערך חצי 40 unknown (WhatsApp and typed links pass no source)לא ידוע (וואטסאפ והקלדה ישירה לא מעבירים מקור) 8 Instagram (bio 5, story 3)אינסטגרם (ביו 5, סטורי 3) of 113 visits, including eventsמתוך 113 ביקורים, כולל אירועים

An insight about distribution, not the product: Facebook carried the launch, Instagram barely did.

תובנה על ההפצה, לא על המוצר: פייסבוק נשא את ההשקה, ואינסטגרם כמעט לא.

Read with careלקרוא בזהירות
  • Small numbers, from one day, through our personal networks. A first indication, not a conversion rate.
  • Probably lower than reality: ad blockers and the Brave browser block GoatCounter.
  • These are demand letters sent, not deletions done. The parties have 30 days to answer.
  • A letter counts as sent when the user confirms it. The page never sees the email, which leaves from the user’s own mailbox.
  • No personal data: no cookies, no IP addresses, nothing from the form.
  • מספרים קטנים, מיממה אחת, מהרשתות האישיות שלנו. אינדיקציה ראשונה, לא אחוז המרה.
  • כנראה נמוכים מהמציאות: חוסמי פרסומות ודפדפן Brave חוסמים את GoatCounter.
  • אלה מכתבי דרישה שנשלחו, לא מחיקות שבוצעו. למפלגות יש 30 יום לענות.
  • מכתב נספר כנשלח כשהמשתמש מאשר. הדף לא רואה את המייל, שיוצא מהתיבה של המשתמש.
  • בלי מידע אישי: בלי עוגיות, בלי כתובות IP, ובלי שום פרט מהטופס.

Small and early, and still: people who reach the page, finish. Numbers after election day (27.10) will follow.

קטנים ומוקדמים, ובכל זאת: מי שמגיע לדף, מסיים. נתונים אחרי יום הבחירות (27.10) יתווספו.

Launchהשקה

Two videos, three cuts eachשני סרטונים, שלוש גרסאות לכל אחד

The problem (14s) and the flow (20s, above). A main cut with a QR code, an Instagram story, a reel. Readable without sound; every sound effect generated in code, no music.

הבעיה (14 שניות) והזרימה (20 שניות, למעלה). גרסה ראשית עם QR, סטורי לאינסטגרם, ורִיל. מובנים בלי סאונד; כל אפקט נוצר בקוד, בלי מוזיקה.

What I learnedמה למדתי

  • A good product can be a right people already have.
  • A decision is only a decision once you say what it gives up.
  • Two days with real users taught more than four days of building.
  • מוצר טוב יכול להיות זכות שכבר יש לאנשים.
  • החלטה היא החלטה רק כשאומרים על מה היא מוותרת.
  • יומיים עם משתמשים אמיתיים לימדו יותר מארבעה ימי בנייה.

Next timeבפעם הבאה

  • Real users on day two.
  • A test email to every address before launch.
  • Motion as an extra from the first line.
  • משתמשים אמיתיים כבר ביום השני.
  • מייל בדיקה לכל כתובת לפני ההשקה.
  • תנועה כתוספת מהשורה הראשונה.

Party logos are blurred in this case study.הלוגואים של המפלגות מטושטשים בקייס הזה.

Next in the portfolio UX case study NanoClip

Maayan Kedem-BhonkerUX · UI · Digital design

← All work