Plans — Export PDF
One click renders the plan to a branded multi-page PDF: cover, strategy, personas, journey + logic map snapshots, per-piece briefs, cost summary.
What is it?
The Export PDF button (header of any plan with pieces) fires a Cloud Function that launches a headless Chromium, navigates to the plan's print route, captures every section as A4 pages, uploads the PDF to Firebase Storage, and returns a download link that opens in a new tab. Each export is appended to a history list on the Overview tab.
When should I use it?
- You need a client deliverable that shows the plan structure plus the writing logic.
- You want a snapshot of the plan at a specific point in time (it captures whatever's in Firestore at click time).
- You want a static fallback for stakeholders who don't have access to the app.
How to use it
- Open any plan in Draft, Review, Completed, or Done · partial status.
- Click Export PDF in the header. The button shows a spinner while the CF runs (15–30 seconds typical, up to a minute on cold start).
- On success, the PDF opens in a new tab. You can save it locally from there.
- Check the PDF exports card on the Overview tab to revisit past exports — every entry has timestamp, author, and an Open link.
Tips and best practices
- The PDF embeds a static Journey Map snapshot at the completed walker position — that's intentional, it tells the strategy story end-to-end.
- For client deliverables, export after you've polished the rationale and stage rationale fields — they appear prominently on the per-piece brief pages.
- Each export is a fresh capture; old exports stay accessible for ~30 days via the history link before they expire.
Gotchas and limits
- Export is hidden for plans in Failed, Generating, or Pending status, and for plans with zero pieces.
- A long plan (10 pieces, full personas) lands around 1.5–2 MB of PDF. The capture timeout is 5 minutes — that's plenty in practice.
- The PDF embeds the same content-type icons and funnel colours you see in-app, so the deliverable matches the screens exactly.