I built this to see if I could make a point-cloud museum that moves with your mouse and still stays smooth at 60 FPS without any framework. No libraries. No build steps. Just Canvas2D and a bunch of tiny floating lights.
WHAT I WAS TESTING:
I was testing how well I could keep point-cloud rendering alive under constant user motion while keeping the frame rate locked at 60. The system had to handle hundreds of thousands of points updating every frame, and I had to make sure the browser didn’t stutter from garbage collection or event throttling.
THE TECHNICAL SIDE:
Everything runs in the browser with Canvas2D. No WebGL. No Three.js. No external dependencies. I wrote custom shaders with GLSL to color and animate the point clouds. I hand-tuned the event loop to avoid frame drops during mouse moves, and used requestAnimationFrame with manual frame pacing to stay at 60. Memory is allocated per object and recycled on demand. No global state leaks. No third-party tracking.
WHAT I LEARNED:
The key was not making the math too tight or too loose. Too tight and the browser would freeze. Too loose and the frame rate would drop. I learned to profile frame times, adjust point update rates based on user velocity, and use a simple debounced event handler to keep mouse movement from overwhelming the system. It runs at 60 on an old laptop, and feels buttery on a mid-tier machine.
TRY IT YOURSELF:
Open it in your browser, it's hosted live on my JSFiddle. Move the mouse around. Watch how the clouds react. No lag. No freeze. No framework.😊
Your Logistics Team Shouldn't Have to Chase Every Shipment Manually. 🚢
A shipment is delayed. Your customer wants an update. Your operations team is checking carrier portals, copying tracking numbers into spreadsheets, and sending the same status emails repeatedly.
By the time everyone has the right information, the next shipment needs attention.
The problem isn't a lack of effort. It's disconnected logistics operations.
Common challenges:
Shipment updates scattered across multiple carrier systems.
Delayed shipments discovered too late.
Manual customer status emails.
Tracking spreadsheets that quickly become outdated.
Repetitive follow-ups between operations and customer service.
Limited visibility into shipment exceptions.
The solution: An automated logistics operations workflow built with n8n.
I can design an automation that connects carrier tracking APIs, your shipment database, and customer communication channels.
Instead of manually checking every shipment, your team receives structured updates when something actually needs attention.
What the automation handles:
📦 Shipment Tracking — Retrieve updates from supported carrier APIs.
📊 Operations Visibility — Maintain synchronized shipment records and exception histories.
🔁 Escalation Management — Notify the responsible team when an exception requires action.
The goal: Less repetitive tracking work, faster exception awareness, and more consistent customer communication.
Two ways we can work together:
Option 1: Already have carrier APIs, a TMS, or a defined tracking workflow? Share your requirements, and I'll help design the integration.
Option 2: Not sure which logistics tasks should be automated? We can map your shipment lifecycle and identify the highest-value starting point.
Make your logistics operations easier to manage as shipment volume grows.
Workflow architecture
Scheduled Trigger → Carrier API Request → Normalize Tracking Events → Match Shipment Records → Detect Status Changes → Route Exceptions → AI Summary → Customer Email / Operations Alert → Database Update
Implementation: Authenticate carrier integrations, normalize differing event codes, compare timestamps and event IDs, prevent duplicate alerts, route exceptions by severity, and log delivery failures for retry.
Benefits: Reduced manual tracking, clearer exception ownership, more timely customer updates, and an auditable shipment history.
Result: A centralized shipment monitoring workflow that allows operations teams to focus on resolving exceptions instead of repeatedly checking tracking portals.
The customs-hold exception is the one I'd find hardest to route, since it needs a different owner than a plain delay. Do you map each exception type to its own team in the escalation step, or is it one shared alert queue?