Brian Norris
โ† All work

CampuSGF

A Google Maps-driven city guide for college students new to Springfield, MO

Type
Work
Client
Revel Advertising
Role
Sole developer
Year
2026
Stack
VueWordPressACF Flexible ContentGoogle MapsGoogle Places API
Screenshot of the CampusGF website showing options for downtown dining and shopping, a testimonial quote from a student, and an aerial photo of Springfieldโ€™s downtown area under a clear sky.
A screenshot of the Campus SGF website

Context

College students moving to Springfield for the first time need a way to get familiar with the city and where to eat, shop, and spend time. The site needed Google Maps as a primary feature, with pins filterable by category, pulling real business data from Google Places.

The challenge was cost and performance. Google Places API calls add up quickly, and a naive implementation would make a live API call every time the map loaded and every time a pin was selected. The goal was to serve accurate, useful data while keeping Google Cloud costs under control and the front-end experience fast.

Role

Process

  1. 01

    A caching strategy built on API policy research

    Google's API usage policies say not all Google Places data can be cached, and how long any of it can be cached varies by data type. Instead of guessing, I used Claude to research and interpret Google's API usage policies, determining exactly what could be cached, what couldn't, and for how long. Place IDs and coordinates are cached in WordPress, giving the front end everything it needs to load and render the map without a live API call. Website URLs, which Google's terms require to be fetched live, are handled separately. The result is a snappier map load and significantly fewer API calls.

  2. 02

    A custom WordPress plugin for place management

    A custom plugin handles the editor experience for adding new locations. Editors search Google Places directly from within WordPress, select a result, and the plugin caches the permitted data at the point of input: place IDs, coordinates, and other allowable fields. This lets you start with fresh data the moment a place is added, without requiring manual data entry.

  3. 03

    Automated verification with a scheduled webhook

    Places close, move, and change. A scheduled webhook triggers a recurring recheck of all cached locations, verifying that each place is still in business and flagging any that appear to have moved or closed for editorial review. This keeps the guide accurate over time without requiring constant manual maintenance.

Visuals

Map of downtown Springfield highlighting locations for drinks, dining, shopping, and arcades. Colored icons represent different types of businesses, with a legend on the left listing venues and categories.
A screenshot of the Campus SGF website

Outcome

A live, actively maintained city guide built around a Google Maps experience that loads fast and stays accurate. The caching strategy meaningfully reduced Google Cloud API costs while improving front-end performance, and the automated verification system keeps the data reliable without ongoing developer involvement.