Back to all tools
Project recordGoogle Business ProfileOpen sourceUpdated

Multi-lingual Description Writer

Draft and localize Google Business Profile descriptions in English and Thai, optimized for local SEO keywords.

Multi-lingual Description Writer researches a Thai business by name, lets you verify the facts and target district, then generates three editable Google Business Profile description options pairing polite Central Thai with English.

What does the Multi-lingual Description Writer produce?

Multi-lingual Description Writer is an open-source tool for Thai business owners and the agencies serving them who need a Google Business Profile description that reads naturally in both English and Thai, fits Google's 750-character limit, and doesn't take an hour per listing to write. Type in a business name and it uses Gemini with Google Search grounding to research the real business category, district, and three to five service or feature notes, all editable before anything is drafted, so nothing gets invented. From those confirmed facts it generates three bilingual description options, each pairing polite Central Thai copy optimized for local SEO keywords with a polished English translation. A results workspace counts Thai, English, and combined character length against the 750-character limit, warns rather than silently truncating, and lets finished copy be copied or exported as a formatted PDF for handoff to a client or team.

Overview

A Google Business Profile description has to describe the business clearly, read naturally in the customer's language, and stay within Google's 750-character limit. Producing useful Thai and English copy for every listing an owner or agency manages can quickly become repetitive, especially when the location and service details still need to be checked first.

The first step uses Gemini with Google Search grounding to suggest the business name, district, core category keyword, and three to five service or feature notes. Those fields stay editable, so the user can correct or replace the researched details before generation. The app then drafts three bilingual variations using the confirmed keyword, district, and business notes.

The result workspace separates and counts the Thai and English sections, shows the combined character total against the 750-character limit, and lets the user edit each variation. It warns when copy is over the limit rather than silently truncating it; finished text can be copied or exported as a formatted PDF for review and handoff.

The project is open source and free to self-host: a small full-stack app (React frontend, Node/Express backend) that anyone with a Gemini API key can run, deploy, or fork.

Key features

Live Google Search grounding

Type in a business name and the app looks up real, current business category, district, and service details from Google before drafting anything — no need to manually re-enter facts that are already public.

Bilingual EN/TH generation

Generates three professional description variations per business, each pairing polite Central Thai copy optimized for local SEO with a polished English translation.

District and amphoe targeting

Lets you select or specify a precise area modifier — like Thonglor, Bangkok or Nimman, Chiang Mai — so each draft clearly states the location the business serves.

Character-limit aware editing

Tracks Thai, English, and combined length against Google's 750-character profile-description limit as you edit, with an explicit over-limit warning before copy or export.

Copy or export as PDF

Finished descriptions can be copied to the clipboard instantly or exported as a formatted PDF, generated client-side, for handing off to a client or team.

Rate-limited, self-hostable server

Keeps the Gemini API key on the Express server, caps JSON request bodies, validates input types and lengths, applies separate per-IP limits to search and generation, and enables Helmet headers compatible with its iframe deployment.

Architecture

FrontendReact 19 with TypeScript, built on Vite and styled with Tailwind CSS v4; PDF and image export handled client-side with html2canvas and jsPDF.
BackendNode.js and Express API server. A search-grounding endpoint retrieves business facts from Google, and a generation endpoint drafts the bilingual descriptions and enforces layout rules (keyword placement, polite Central Thai register, dual line breaks).
AI engineGoogle Gen AI SDK (@google/genai) calling Gemini with Google Search grounding enabled, plus a self-healing JSON parsing step that corrects malformed model output before it reaches the client.
HostingThe public demo runs on Google Cloud Run; the app is designed to deploy to any Node-compatible host.
SecurityGemini API key is loaded server-side only. Search and generation have separate per-IP rate limits, request bodies are capped at 15 KB, and Helmet is enabled; CSP and frameguard are intentionally disabled so the app can run inside the AI Studio sandbox iframe.
ReactTypeScriptViteTailwind CSSNode.jsExpressGemini APIGoogle Cloud Run

Looking for another tool?

Browse all tools