Skip to content
Dimitri Robiere PerrietD. R. PerrietCaen, FR — --:--:--EN · FR

GMB Mediapilote, a Google Business Profile tool

Under contract · Mediapilote● Live
Client
Mediapilote
Role
Full-stack developer
Duration
ongoing
Year
2025
Stack
Next.js · TypeScript · Cloudflare Workers · Cloudflare D1 · Drizzle ORM · Google Business Profile API · Meta Graph API · Tailwind CSS
GMB Mediapilote, a Google Business Profile tool — illustration
Fig. 01 — GMB Mediapilote, a Google Business Profile tool, illustration
(00) — In short

GMB Mediapilote manages the agency clients’ Google Business Profile listings: AI-drafted review replies, posts, opening hours, performance and social networks.

(01)

Context

Mediapilote manages the local presence of many businesses on Google Business Profile: replying to reviews, posting updates, keeping opening hours current. In 2025 I first wrote two WordPress plugins: a central API handling Google OAuth, and a client plugin displaying reviews on the business’s website.

In 2026 the agency wanted a complete tool, linked to the intranet, for the team as well as for the merchants themselves. The GMB platform grew out of that need.

(02)

Challenge

Access to the Google Business Profile API requires approval and comes with strict quotas. The platform had to stay usable while waiting: show data already synced, report the access status and avoid retrying calls in a loop.

Two audiences also had to be kept apart. The team manages every listing, while a merchant only sees their own and suggests changes instead of publishing them directly.

(03)

Approach

I wrote the Business Profile REST client, an hourly sync via Cron Trigger with a job log, then real-time Google notifications through Pub/Sub. OAuth tokens are encrypted with AES-256-GCM, and reads go through a KV cache with negative caching while the quota is pending. Reviews land in an inbox, with automatic replies drafted by AI from an analysis of the business.

The platform also publishes to Facebook, Instagram and LinkedIn from a single screen, with a per-channel calendar. The merchant portal offers reviews, posts and photos as suggestions. A full redesign based on mockups cut the business page from fifteen sections down to six tabs.

(04) — Results

Key figures
hourly
Google sync
Google · Facebook · Instagram · LinkedIn
publishing channels
6
tabs on the business page
102
commits
← Previous project10 · HappyFid 2, a white-label React Native mobile appNext project12SEO Mediapilote, an SEO analysis and reporting tool