OB
אופיר ברנס
Builder · TLV
חזרה לכל הפרויקטים
PWA · 2026 · Personal Project

Drop

PWA לזיכרון חניה — אפליקציה אמיתית, מותקנת, עובדת אוף-ליין

Drop

על האפליקציה

Drop היא אפליקציית רשת מתקדמת (PWA) שפותרת את הבעיה הכי מעצבנת בכרך — איפה השארתי את הרכב?

לחיצה אחת על כפתור גדול שומרת את המיקום ב-GPS. אופציונלית — תמונה של המקום, הערה קולית בעברית, וטיימר עם התראת push לפני שהחניה פוקעת. ניווט חזרה דרך Waze בלחיצה.

אפליקציה אמיתית. מותקנת. רצה אוף-ליין. כל הנתונים נשארים אצלך במכשיר.

לחצו לנסות בעצמכםofir.zbang.net/drop

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

יכולות מרכזיות

  • שמירת חניה ב-Geolocation — מיקום מדויק עם accuracy fallback, reverse geocoding לכתובת קריאה (Nominatim/OpenStreetMap).
  • תמונת חניה אופציונלית — מצלמה ישירה דרך Capture API, נשמר כ-DataURL ב-IndexedDB.
  • הקלטת קול בעברית — Web Speech Recognition עם lang=he-IL ותמלול חי. נופל ל-prompt רגיל בדפדפנים שלא תומכים.
  • טיימר עם התראת Push — Notifications API + ServiceWorker — מתריע 5 דקות לפני שפוקעת.
  • מפה חיה (Leaflet + OSM) — מיני-מפה עם פין מותאם אישית, מציגה מרחק חי מהמיקום הנוכחי בעדכון רציף.
  • ניווט חזרה ב-Waze — deep link ישיר; נפילה ל-Google Maps ב-desktop.
  • שיתוף Web Share API — שיתוף הקואורדינטות לבני משפחה דרך WhatsApp/Telegram, עם fallback ל-clipboard.
  • היסטוריה מלאה — כל החניות, עם משך, כתובת, תמונה, הערות. אפשר לנווט/למחוק/לייצא.
  • גיבוי JSON — Export בלחיצה לשמירה מקומית.

ארכיטקטורת ה-PWA

  • Service Worker עם 3 אסטרטגיות cache: cache-first ל-tiles של מפה (עד 200 פריטים), cache-first-with-revalidate ל-app shell, stale-while-revalidate ל-CDN של פונטים ו-Leaflet.
  • IndexedDB schema עם indexes על createdAt ו-active — מילישניות לכל שאילתא, גם עם 1000+ חניות.
  • Manifest.webmanifest מלא: 3 אייקונים (any + maskable), shortcuts ל"שמור" ול"היסטוריה", display: standalone, orientation: portrait, RTL native.
  • Vanilla JS, אפס תלויות — האפליקציה כולה ~32KB minified, נטענת תוך מילישניות.
  • Geolocation watchPosition — מעקב חי אחרי המיקום הנוכחי כדי לחשב מרחק מהרכב בלי להתיש את הסוללה.

הפילוסופיה

אפליקציה זה לא feature list — זה מצב רוח שמשתנה כשמשתמשים בה.

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

פרטיות מוחלטת

  • אין שרת backend. אין רישום משתמשים. אין tracking.
  • כל המיקומים, התמונות וההקלטות נשמרים רק במכשיר ב-IndexedDB.
  • כשאני בונה אפליקציות לעצמי או למשפחה — ככה זה צריך להיות.
· TECHNOLOGY ·
PWA Vanilla JS IndexedDB Service Worker Geolocation API Web Speech API Notifications API Leaflet OpenStreetMap Web Share API

פרויקטים קשורים.

· YOUR PROJECT NEXT ·

הפרויקט הבא שלך?

בוא נדבר