$ show GoogleCloudPlatform/genai-for-marketing
This repository is a full-stack marketing demo application powered by Google Cloud generative AI (Vertex AI Gemini, Imagen). It provides an end-to-end workflow for generating campaign content (emails, social media posts, website copy, images), analyzing audiences via natural language to BigQuery, and managing assets across platforms. The frontend is a modern Angular 17 single-page application with Firebase authentication and hosting, while the backend is a FastAPI Python service deployed on Cloud Run. Terraform infrastructure-as-code provisions all GCP resources including BigQuery datasets, Vertex AI Search datastores, Dialogflow CX agents, and Google Drive folder templates for content export. The application showcases marketing use cases like trendspotting via GDELT news summarization, audience insights using structured and unstructured data, and interactive image editing with inpainting/outpainting. While primarily a demo application, the repository also contains several Jupyter notebooks exploring model tuning, text-to-SQL, and clustering explanations, making it a hybrid resource for both application developers and data scientists.
The LLM identified 4 files worth highlighting for reuse:
A reusable async utility module for calling Vertex AI generative models (Gemini, Imagen). It provides functions for generating text, images, editing images, and performing multi-turn chat. The prompts are parameterized and decoupled from the calling code, enabling easy extraction into other projects requiring GenAI content generation.
An isolated module that fetches trending topics from Google Trends (BigQuery) and news articles from the GDELT API, then summarizes them using Vertex AI. It demonstrates a clean pattern for combining data retrieval with LLM summarization, and can be repurposed for any trend-analysis or news-digest application with minimal adaptation.
A well-structured Angular service that abstracts API calls for email copy generation. It uses consistent error handling with snackbar notifications, type-safe interfaces, and a clear separation of concerns. This pattern can be extracted as a template for any Angular service communicating with a REST API.
A standalone Python script that creates a Google Drive folder structure for marketing campaigns, copies templates (Docs, Slides, Sheets) from a shared drive, and optionally shares with users. It demonstrates robust use of the Google Drive API with service account authentication and error handling, reusable for any project needing automated Drive folder provisioning.