Self-hosted package tracking for Dutch carriers
Track packages from Amazon, PostNL, DHL, DPD, and GLS with a REST API, web dashboard, Chrome extension, and Home Assistant integration.
Features
A complete self-hosted solution for package tracking with multiple sync methods, real-time notifications, and smart integrations.
Connect accounts from Amazon, PostNL, DHL, DPD, and GLS. Automatic background polling keeps your package status up to date every 30 minutes.
Auto-sync captures packages directly from carrier websites. Detects carrier tabs, one-click sync, configurable intervals, and auto-login support.
Run as an HA addon with a sidebar tile. Exposes sensor entities with package attributes, a Lovelace card, and automation events on status changes.
Browser push notifications on status changes. Notification center with unread badges and full status transition history across all carriers.
Full JSON API with OpenAPI/Swagger docs. Manage accounts, packages, and notifications programmatically. JWT Bearer token authentication.
Runs in Docker or Kubernetes. SQLite database, no cloud dependency. Your tracking data stays on your own hardware. Optional password protection.
Screenshots
A dark-themed dashboard built for quick scanning of all your package statuses at a glance.
Supported Carriers
All major Dutch parcel carriers supported with automatic or manual sync options.
Get Started
Deploy with Docker, Kubernetes, or as a Home Assistant addon.
# Pull and run the latest image
docker run -d \
--name dwmp \
-p 8000:8000 \
-v dwmp-data:/app/data \
-e TZ=Europe/Amsterdam \
-e POLL_INTERVAL_MINUTES=30 \
ghcr.io/stevendejongnl/dude-wheres-my-package:latest
# Clone and apply the manifests git clone https://github.com/stevendejongnl/dude-wheres-my-package.git cd dude-wheres-my-package # Edit kubernetes/configmap.yaml with your settings kubectl apply -f kubernetes/
stevens-home-assistant-integrations.
Chrome Extension
Load as an unpacked extension via chrome://extensions in developer mode, or install the signed .crx file.