← All projects
Reviews, AI-assisted replies, and alerts for local businesses

Fama Local

AI Product

Reputation management platform with Google Business Profile, WhatsApp Business API, DeepSeek-powered reply suggestions, and automations orchestrated on Vercel with Postgres on Supabase.

Next.jsNestJSTypeScriptPostgreSQLSupabaseDrizzle ORMVercelWhatsApp Business APIGoogle Business ProfileDeepSeek
Role
Product & full-stack engineering
Timeline
Sep 2025 - Mar 2026
Tech
Next.js, NestJS, Drizzle, Supabase, Vercel Cron, WABA, Google OAuth, DeepSeek
Status
Live
Period
Sep 2025 - Mar 2026
Architecture
Monorepo (app + API)
Infra
Vercel + Supabase
Product showcase

Flows & screens

01   Dashboard to track ratings, KPIs, and the reply pipeline aligned with Google Business Profile.

How it's built

Implementation

01

Google Business Profile

OAuth 2.0, location and review sync, webhooks and cron to drain event queues and keep local state aligned with Google's fragmented Business APIs.

02

DeepSeek in the reply flow

Suggested replies from review text and star rating with persisted AI preferences; wiring into auto-reply and Google publication paths.

03

WhatsApp Business API (WABA)

Webhooks with HMAC validation, outbound messages and templates, and notifications when new reviews arrive.

Description

Fama Local is a reputation and local presence product for businesses that depend on Google Business Profile reviews. It brings together onboarding, AI preferences, suggested or automated replies, and alert channels—including WhatsApp Business API (WABA)—so owners can respond quickly without losing context.

On the backend, NestJS exposes modules for auth (Google + JWT), reviews, GBP integrations, WhatsApp, and DeepSeek. On the frontend, Next.js with Tailwind delivers account flows, dashboards, and AI / auto-reply settings. PostgreSQL runs on Supabase with Drizzle ORM for migrations and database-first typing.

AI, documentation, and a RAG-like product pattern

The design keeps operational knowledge in the database: auto-reply copy per star band, tone preferences, templates, and business/location metadata feed what the system proposes or sends—close to “living documentation” in the datastore to automate replies and steer publication to Google, together with DeepSeek calls. That behaves like policy-grounded augmentation: the model does not operate in a vacuum; it combines rating + preferences + stored messages for on-brand consistency.

In development, the repo holds dozens of guides (docs/ in API and app: OAuth, fragmented Google APIs, WABA, Vercel, Supabase, SSL, Pub/Sub, etc.). Treating that documentation as retrievable truth—including via MCP to official docs and the repo itself—mirrors RAG for engineering: less trial and error, faster integration with APIs that are unstable or thinly documented on the surface.

Cursor, Claude, and delivery leverage

Much of the work used Cursor and models such as Claude for pair programming with the code and project documentation artifacts. The tangible benefit is speed with guardrails: Nest/Next boilerplate, safer refactors, monorepo conventions, and turning long guides (fragmented Google Business, consent screens, Meta tokens) into executable steps—without replacing human review, but shortening integration and debug cycles.

Features

  • Google Business Profile: account and location linking, review sync, and reply flows aligned with current Business Profile APIs.
  • DeepSeek: suggested replies from rating, body text, and persisted AI preferences.
  • Auto-reply: per-star settings and stored messages, with tokens (e.g. customer name) and API-triggered runs.
  • WABA: webhooks, outbound text/templates, and operational notifications.
  • Vercel cron: scheduled jobs for Google Business backlogs and periodic review sync.
  • Supabase + Drizzle: managed Postgres, migrations, and production-oriented scripts.
  • Monorepo: clear split between famalocalapp (Next.js) and famalocalapi (NestJS in serverless mode on Vercel).
  • Auth: Google OAuth 2.0 in the product, with JWT for API consumption.

Stack (quick reference)

LayerTechnologies
FrontendNext.js, React, TypeScript, Tailwind CSS, Zod
BackendNestJS, TypeScript, Passport/JWT
DataPostgreSQL (Supabase), Drizzle ORM
IntegrationsGoogle Business Profile / OAuth, Meta WABA, DeepSeek API
InfraVercel (API routes + Cron), documented env and build setup
Workflow qualityExtensive in-repo docs; MCP/LLM use during development