Realtime Mouse Tracker
Operator-focused live storefront signals without extra infrastructure.
A privacy-first OpenCart extension that tracks storefront interaction signals in near real time and surfaces them in an admin-only dashboard using short-lived local state only.
Features
Built for operators who need live signal, not a heavy analytics stack.
Live Operator Dashboard
Watch active visitors, queued visitors, events per minute, rage clicks, dead clicks, and recent event flow from one OpenCart-native admin screen.
Real Interaction Signals
Tracks page views, cursor movement, scroll depth, clicks, taps, rage clicks, and dead clicks to expose friction patterns quickly.
Preview Mode
Simulate realistic operator-facing scenarios inside the admin UI so you can demo, review, and capture screenshots without live shopper traffic.
Configurable Scope
Limit tracking to catalog pages, product pages, category browsing, or cart and checkout routes to control signal quality and request volume.
Short-Lived Local State
Uses a rolling JSON snapshot on the OpenCart host instead of a separate analytics backend, long-lived history, or replay archive.
Low Infrastructure Footprint
No Redis, Node.js, WebSockets, or external analytics service required, which keeps deployment practical for single-store hosting.
How it works
Five steps from storefront interaction to admin insight.
- 01
Visitor opens a matching storefront page
The tracker script is injected automatically through the OpenCart footer event when the configured route scope matches.
- 02
Browser batches interactions
Mouse movement, scrolling, clicks, taps, and heartbeat-like activity are grouped into small payloads instead of firing noisy requests on every event.
- 03
Collect endpoint sanitizes the payload
OpenCart receives the batch through the public collect route, validates origin data, and normalizes event values before any state is updated.
- 04
Rolling live state is updated
The extension stores only the current live snapshot in a short-lived local JSON state file and prunes stale visitors automatically.
- 05
Admin dashboard polls and refreshes
The operator dashboard reads the snapshot route and redraws metrics, recent visitors, and recommendations without requiring external infrastructure.
Privacy and infrastructure model
This extension is intentionally built for low-cost hosting and short-lived operational awareness rather than persistent analytics warehousing.
- No Redis, Node.js service, WebSocket broker, or external analytics backend is required.
- No long-lived visitor history or session replay archive is stored.
- The extension uses only a short-lived rolling state file for live operational awareness.
- Do Not Track can be honored through the module settings.
- The dashboard is admin-only and never renders as a storefront widget.
- Origin validation and payload sanitization run before state changes are accepted.
Requirements
| OpenCart | 4.0 or higher |
| Tested version | 4.1.0.3 |
| PHP | 8.3 or higher |
| Redis / Node.js | Not required |
| Realtime transport | HTTP batching + admin polling |
| Storage model | Short-lived local JSON state |
Installation
- 01 Download the packaged OpenCart zip and upload it through Extensions Installer.
- 02 In OpenCart admin, go to Extensions → Installer and upload the archive.
- 03 Go to Extensions → Extensions → Modules and install Realtime Mouse Tracker.
- 04 Open the module settings, enable tracking, and save your configuration.
- 05 Choose the storefront scope, sample rate, retention window, and polling interval that fit your store.
- 06 Open the module page in admin to watch the live dashboard update as shoppers browse matching routes.
Frequently asked questions
Does this require a separate realtime server?
No. The extension runs inside OpenCart and uses browser batching, a collect endpoint, and an admin polling loop instead of Redis, Node.js, or WebSockets.
Will storefront visitors see a widget or overlay?
No. Shoppers only load the tracking script when the configured scope matches. The dashboard itself is admin-only.
Can I demonstrate the dashboard without live traffic?
Yes. Preview mode can simulate realistic scenarios so you can evaluate the interface, test behavior, or capture screenshots without depending on real visitors.
Does it keep permanent analytics history?
No. The design goal is live operational awareness, so the extension stores only a rolling snapshot in short-lived local state.
Can I reduce the request load on busy stores?
Yes. You can narrow the route scope, lower the sample rate, and adjust the retention and polling intervals to trade fidelity for lower runtime cost.
Need live operator visibility in OpenCart?
Lightweight packaging, native OpenCart integration, and no extra infrastructure to babysit.
MIT · Developed by Devlin Duldulao