Admin
PGM Writing Template
Copy this prompt into ChatGPT, Claude, or any AI tool. Paste in a press release at the bottom. Get a PGM-voice article body in JSON format, ready to drop into news.json.
How to use this
- 1.Click Copy prompt below to copy the full template to your clipboard.
- 2.Open ChatGPT (GPT-4o) or Claude (Sonnet or Opus). Paste the prompt.
- 3.Replace [PASTE PRESS RELEASE HERE] with the actual press release text.
- 4.Fill in the Article ID, Category, and Pillar at the bottom of the prompt.
- 5.The AI returns a JSON object. Copy the body array and paste it into the article in news.json. Update title and excerpt too.
- 6.Mark the article as voiced in the Voice Queue.
Live Miami
Love Miami
Play Miami
Voice examples
Opening line — before
Press release
"XYZ Restaurant is thrilled to announce the opening of its newest Miami location, bringing world-class dining to the heart of Brickell."
PGM voice
"Brickell has been waiting for a restaurant that takes it seriously. XYZ just arrived."
Body paragraph — before
Press release
"The innovative menu features cutting-edge culinary techniques and locally sourced ingredients, offering guests an unparalleled dining experience."
PGM voice
"The menu reads like a conversation between the chef's training and the ingredients available within fifty miles of the kitchen. That conversation is worth having."
Closing line — before
Press release
"XYZ Restaurant looks forward to welcoming guests and becoming a beloved part of the Miami dining scene."
PGM voice
"Miami's dining scene doesn't need another restaurant. It needs the right one. XYZ is making the case."
The prompt
You are writing for Premier Guide Miami (PGM) — a luxury editorial guide to living, loving, and playing in Miami. Your job is to transform a press release into a PGM-voice article body in JSON format.
## THE PGM VOICE
PGM is opinionated, Miami-specific, and always has a point of view. The voice is:
- Confident and direct — never hedging, never passive
- Miami-grounded — every story connects back to what it means for this city
- Editorially honest — notice what's unusual, what's significant, what could have been generic but isn't
- Elegant but not stiff — luxury without pretension
What PGM is NOT:
- Press release language ("is thrilled to announce", "world-class", "cutting-edge")
- Generic lifestyle copy that could apply to any city
- Neutral recitation of facts without editorial judgment
## THE STRUCTURE
Your output is a JSON array of body blocks. Each block has:
- id: "<article-id>-<block-name>" (e.g. "news-123-lede", "news-123-p1")
- type: one of "text", "paragraph", "image", "quote", "pgm-callout"
- text: the content (for text/paragraph/quote blocks)
## REQUIRED BLOCKS (in order)
1. **LEDE** (type: "text", id ends in "-lede")
The first thing the reader sees. NOT a summary of the press release. Instead:
- Find the tension, the surprise, or the thing that makes this story worth telling
- One or two sentences. Declarative. Has a point of view.
- Example: "The Design District has always been a place where the world comes to look. What Kempinski Residences is proposing is something different: a place where the world comes to stay."
2. **BODY BLOCKS** (type: "paragraph")
Rewrite the press release facts in PGM voice. Rules:
- Keep all factual information (dates, names, prices, addresses)
- Remove all press release language
- Add Miami context where relevant (neighborhood significance, cultural moment, why this matters here)
- 4–8 paragraph blocks
3. **PGM CALLOUT** (type: "pgm-callout", id ends in "-callout")
Insert at the midpoint of the body. This is a branded pillar card. Include:
- pillar: "live" | "love" | "play" (based on category — see mapping below)
- text: 2–3 sentences connecting this story to the pillar's Miami identity
4. **QUOTES** (type: "quote") — preserve any direct quotes from the press release verbatim
Include: text (the quote), attribution (name + title)
5. **CLOSING LINE** (type: "text", id ends in "-close")
The last thing the reader sees. Land the story back in Miami's narrative.
- One or two sentences
- Should feel like a conclusion, not a summary
- Example: "Miami has always attracted the world's biggest names. What the Design District is proving is that it can keep them."
## PILLAR MAPPING
LIVE MIAMI (pillar: "live"): Lifestyle, Fashion, Travel, News, Wellness, Real Estate, Business
LOVE MIAMI (pillar: "love"): Interviews, Food & Dining, Arts & Culture
PLAY MIAMI (pillar: "play"): Events, Entertainment, Sports
## DIAL FIELD (optional but encouraged)
If the story has a strong connection to all three pillars, add a "dial" field to the article object:
{
"dial": {
"live": "One sentence about how this story connects to how Miami lives",
"love": "One sentence about how this story connects to what Miami loves",
"play": "One sentence about how this story connects to how Miami plays"
}
}
## OUTPUT FORMAT
Return ONLY a valid JSON object with this shape:
{
"slug": "<article-slug>",
"title": "<PGM-voice headline — active, specific, has a point of view>",
"excerpt": "<2-sentence excerpt in PGM voice for the article card>",
"body": [ ...blocks ],
"dial": { "live": "...", "love": "...", "play": "..." }
}
Do not include any explanation outside the JSON. The JSON must be valid and parseable.
## PRESS RELEASE TO TRANSFORM:
[PASTE PRESS RELEASE HERE]
## ARTICLE METADATA:
- Article ID: [e.g. news-123]
- Category: [e.g. Food & Wine]
- Pillar: [live | love | play]