
Building a Real-Time GPS Tracking System for NOLA Beer Bus
In 2023, NOLA Beer Bus approached me with what sounded like a simple request:
“Can customers see where the bus is in real time?”
On the surface, it seemed like a Google Maps project.
In reality, it became a full custom software solution involving GPS tracking, interactive maps, WordPress plugin development, API integration, business rules, and a custom administration dashboard.
The goal wasn’t just to display a bus on a map.
It was to eliminate one of the business’s biggest customer questions:
“Where’s the bus?”
The site needed something more than just a list of stops. They wanted a live, interactive map where people could see:
- Exactly where the bus is (in real time)
- Which breweries are part of the route
- And only show the bus during actual operating hours (Thursday–Sunday, 12–8 pm)
And it all had to work inside WordPress.
Project Summary
| Client | NOLA Beer Bus |
| Year | 2023 |
| Role | Software Developer |
| Technologies | WordPress, PHP, JavaScript, Google Maps API, GPS API |
| Project Type | Custom GPS Tracking Application |
🍺 The Business Requirements
Before writing any code, I worked with the owner to understand how the tours operated and how customers interacted with the service. Those conversations shaped the technical design.
- A mobile-friendly map with brewery stops
- A moving bus marker with real-time tracking
- A route line between stops
- A “Refresh Bus Location” button
- Automatic logic to hide the bus when the service is offline
- Admin-friendly controls — no code required
Also: the live tracking data came from an external API that blocked direct JavaScript access (👋 CORS).
🔧 What I Built
Customer Experience

- Live GPS tracking
- Interactive Google Map
- Brewery markers
- Route visualization
- Mobile-friendly interface
- Refresh button
- Automatic visibility during operating hours
Administrative Dashboard
This is the part most people never see.

To keep the system easy for non-technical staff to manage, I built a custom WordPress administration interface that allowed the business owner to:
- Add and edit brewery locations
- Configure business hours
- Build route options
- Toggle live tracking
- Configure API keys
- Manage everything without editing code
Challenge: Working Around CORS Restrictions
The GPS provider’s API blocked direct browser requests, meaning JavaScript couldn’t retrieve the live bus location.
Rather than exposing API credentials or relying on insecure client-side workarounds, I designed a server-side PHP proxy that:
- securely communicated with the GPS provider
- protected sensitive API credentials
- normalized the response
- returned only the data required by the frontend
Challenge: Making the System Maintainable
One of my goals was ensuring the business owner could manage the application without contacting a developer.
Instead of hardcoding routes and locations, I built a custom administration interface allowing the team to update:
- brewery locations
- operating hours
- routes
- API settings
This made the application far easier to maintain over time.
🚀 The Final Result
Instead of a static list or outdated map, NOLABeerBus.com now has:
- A live, interactive brewery map
- A bus marker that appears only when the bus is actually running
- Admin controls that are easy to manage
- A better experience for tourists and locals alike

Lessons Learned
This project reinforced several principles that still influence how I build software today.
Understand the business before writing code.
The most important part of the project wasn’t Google Maps or GPS integration.
It was understanding how the tours operated and what customers actually needed.
Build for non-technical users.
Software shouldn’t require a developer every time something changes.
Giving the business owner control through a custom administration interface made the application significantly more valuable.
Simplicity wins.
Customers didn’t need dozens of features.
They needed one answer:
Where’s the bus?
Final Thoughts
This is one of my favorite builds. It’s quirky, hyper-local, technically challenging, and just plain fun.
The best part? It all started with a simple request:
“We want a little icon showing where the bus is… but only if we’re open.”
Got a similar idea? Real-time data, maps, or custom WordPress tools?
Let’s talk.
🕊️ Note: The NOLA Beer Bus officially closed in June 2025. This post reflects the work I did while it was active, and I’m proud to have been part of it.


