SnapDrift website drift sentry
scheduler ready
Automation system · live on zbang

דריפט שקט לפני שהקליינט
הראשון שם לב.

SnapDrift לוקח snapshot של דפים על פי לוח־זמנים, משווה תוכן בין שתי נקודות זמן, ומזהה שינויים אוטומטית. כל דריפט נשמר כ-diff שניתן לחקור, כל שינוי מפעיל webhook, וכל פספוס מותיר חותם בלוג אנליטיקה.

איך זה עובד
צופים פעילים snapshots שינויים ב-24ש
snapdrift.live
watcherstatusdrift
tick retention 30d

דאשבורד — ראייה מהירה

סטטוס של כל הצופים, שינויים אחרונים, ויעדים שכדאי לטפל בהם.

צופים
0
פעילים / סה״כ
שינויים ב-24שdrift
0
snapshots שזיהו שינוי
אלרטיםlive
0
נשלחו ב-24 השעות האחרונות
snapshots בכללall-time
0
שמורים ב-Postgres

פעילות לפי שעה

בדיקות (אפור) מול שינויים (קורל) ב-24ש

checks drift

המובילים בדריפט

צופים עם הכי הרבה שינויים מצטברים

    דריפט הוא סיפור.

    SnapDrift מספר אותו מהתחלה ועד הסוף — לכל watcher, על כל הציר.

    צופים — Watchers

    כל יעד שמערכת ניטור פעילה עליו. ערוך פרטים, הפעל בדיקה ידנית, השבת.

    היסטוריה — snapshots & diffs

    כל snapshot שנלכד נשמר ל-30 ימים. בחר שורה כדי לפתוח את ה-diff מול הקודם.

    בחר snapshot

    לחץ על שורה ברשימה משמאל

    — ריק —

    התראות — webhook log

    כל פעולת alert שנשלחה, עם סטטוס מסירה ופרטי היעד.

    דוגמת payload

    כל webhook מקבל JSON בפורמט הבא

    {
      "watcher": "Hacker News — דף הבית",
      "url": "https://news.ycombinator.com/",
      "kind": "change",
      "added": 12,
      "removed": 4,
      "captured_at": "2026-05-12T03:00:00Z",
      "summary": "+ Show HN: shipping a 1M-token agent ..."
    }

    לוג מסירה

    תוצאת המסירה האחרונה לכל יעד

    הגדרות — workspace

    קונפיגורציה גלובלית: שם workspace, retention, webhook ברירת־מחדל, ועוד.

    טוקנים סודיים נשמרים ב-DB ולא חוזרים ב-GET — כתוב/החלף, וזה ייתפס.

    איך זה בנוי

    stack מלא ב-zbang-api · 5+ endpoints · Postgres · scheduler · diff engine

    01

    FastAPI router

    10 endpoints: watchers CRUD, run, snapshots, alerts, analytics, settings, scheduler tick.

    02

    SQLAlchemy

    4 טבלאות: watchers, snapshots, alerts, settings. אינדקסים לפי watcher_id+captured_at.

    03

    httpx async

    fetch על כל watcher עם User-Agent אישי, follow_redirects, timeout 12s, ומדידת זמן תגובה.

    04

    difflib diff

    unified_diff בין snapshot קודם לנוכחי — סופר added/removed, מייצר summary מ-14 שורות.

    05

    Selector engine

    extractor קליל שתופס id/class/tag, מצמצם תוכן לסקציה הרלוונטית — לפני ה-hash וה-diff.

    06

    Webhook dispatch

    POST async לכל היעד שהוגדר על watcher עם payload JSON — מסירה נרשמת בטבלת alerts.