Przejdź do treści
← Powrót do portfolio
Plugin Timocom — oferty frachtu i lekki CRM
Plugin Timocom — oferty frachtu i lekki CRM

Plugin Timocom — oferty frachtu i lekki CRM

Wtyczka Firefox: przechwytywanie ofert frachtu i klientów z Timocom przez DOM (bez drogiego API) oraz lekki CRM do zarządzania leadami lokalnie.

Data realizacji: 15 stycznia 2024

AI Highlight

  • Kontekst:Wtyczka Firefox: przechwytywanie ofert frachtu i klientów z Timocom przez DOM (bez drogiego API) oraz lekki CRM do zarządzania leadami lokalnie.
  • Technologie:JavaScript, Firefox Extension API, DOM Manipulation, HTML5, CSS3, LocalStorage
  • Streszczenie:# Kontekst Na platformie Timocom oferty frachtu i klientów zmieniają się szybko. Oficjalny dostęp API bywa drogi lub niedostępny w potrzebnym zakresie, a ręczne przepisywanie danych zabiera czas i generuje błędy. Plugin...

Interfejs pluginu Timocom

Kontekst

Na platformie Timocom oferty frachtu i klientów zmieniają się szybko. Oficjalny dostęp API bywa drogi lub niedostępny w potrzebnym zakresie, a ręczne przepisywanie danych zabiera czas i generuje błędy. Plugin powstał jako praktyczne obejście: słucha zmian w DOM, zbiera dane ofert i trzyma je w lekkim CRM po stronie przeglądarki.

Cel

Zaprojektowałem i wdrożyłem rozszerzenie Firefox, które:

  • przechwytuje dane ofert frachtu / klientów w czasie zbliżonym do rzeczywistego,
  • nie wymaga kosztownego API Timocom,
  • daje lokalny CRM (leady, historia, statusy),
  • działa w architekturze content script ↔ background ↔ storage.

Moja rola

Odpowiadałem za projekt, opracowanie rozwiązania, wdrożenie oraz opiekę powdrożeniową do 30 dni (poprawki po zmianach UI platformy, stabilizacja).

Zakres

Smart DOM monitoring

  • MutationObserver zamiast agresywnego pollingu,
  • reakcja na pojawianie się / zmianę listingów,
  • niezależność od płatnego API.

Wbudowany CRM

  • organizacja leadów i interakcji,
  • trwałość danych (LocalStorage / IndexedDB),
  • śledzenie statusów od kontaktu do domknięcia.

Warstwa techniczna

  • content script (obserwacja DOM, parser, UI inject),
  • background script (logika CRM, eventy),
  • storage manager (preferencje + większe zbiory danych).

Podejście

Architektura event-driven: przeglądarka reaguje na zmiany strony, zamiast ciągle odpytywać sieć. Parser jest adaptacyjny — Timocom renderuje oferty w różnych układach zależnie od filtrów i widoku, więc wyciąganie danych musi mieć fallbacki i łagodną obsługę braków.

Content Script  ↔  Background Script  ↔  Storage
(DOM + parser)     (CRM + eventy)        (LocalStorage / IndexedDB)

Wyzwania

  • Dynamiczny front platformy — klasyczny scraping pada przy SPA; MutationObserver + selektywne cele obserwacji.
  • Zmienna struktura ofert — różne formaty w zależności od widoku; adaptive parsing i normalizacja.
  • Wydajność przeglądarki — debounce, wąskie targety obserwacji, oszczędne przechowywanie, żeby monitoring nie „zjadał” tabów.

Rezultat

Powstało rozszerzenie Firefox, które zbiera oferty z Timocom bez API i porządkuje je w lokalnym CRM — tańsza i szybsza ścieżka operacyjna dla pracy z frachtem. Po wdrożeniu zapewniłem opiekę do 30 dni.

Dashboard pluginu

CRM

Stack

  • JavaScript (ES6+)
  • Firefox Extension API (content / background scripts)
  • DOM MutationObserver, HTML5, CSS3
  • LocalStorage + IndexedDB

Powiązane projekty