Skip to main content
Apply a company’s identity to a reusable report, proposal, or slide template. Context.dev provides logos and observed website styles; your application supplies the content model, renderer, and PDF or presentation export. ChatSlide uses brand data for generated decks, and Kyndir creates branded client deliverables. The workflow below uses a two-section React report that you can print to PDF.

Gather a small source bundle

Start with an API key from the Quickstart and a verified company domain. On your server, retrieve the Brand profile and, optionally, its Styleguide. Those guides include requests for every SDK. Treat each call independently. An unavailable Styleguide can use the template’s default typography. A missing Brand profile can use a user-entered name and neutral theme. Gather website copy only when the document needs it; the client’s website does not supply your proposal’s pricing, commitments, or project results. Save the domain, retrieval time, and an application version for the bundle. A retrieval timestamp describes when you received the response, not necessarily when the source website last changed.

Approve the document theme

Keep the template contract smaller than the upstream response. The following application model is deliberately independent of the API schema:
document-theme.ts
Call approveTheme with an editor’s chosen color and logo. Keep headings and body text on a neutral surface; use the accent in bounded elements such as a label or rule. If you enable custom fonts, approve a loadable, licensed font and retain a tested fallback stack. Use Brand assets for this workflow. Logo Link is for direct image embedding and does not allow downloading, persisting, or rehosting its returned image files.

Render approved content

Keep author and client identities separate. In a proposal, Prepared by names the sender and Prepared for names the recipient; client styling does not imply that the client authored or approved the document. The following React component imports the theme type from the previous example. Supply approved text and HTTPS source URLs. React escapes the text instead of accepting model-generated HTML.
ClientReport.tsx
report.css
For an editable slide deck, map the same approved theme and content fields to your slide renderer’s master, text boxes, and image placements. That renderer creates the presentation file; Context.dev does not export a PDF or slide deck from the Brand response.

Inspect the exported artifact

Before printing or running an export worker, wait for fonts and images to finish loading. If an asset fails, show the missing-asset state and let the user choose a replacement or the neutral theme. A preview that loaded an image earlier is not proof that a separate export worker can access it. Render the same short report for two companies and a neutral fallback. Check long client names, very wide wordmarks, long findings, missing images, and the actual exported pages. Avoid clipping overflow to force a two-page count; shorten approved copy or allow another page instead. Save the output with the content version, template version, approved theme, source-bundle version, and export time. Store manual logo and color choices separately from automatic candidates so a refresh creates a reviewable revision.

Personalized sales demos

Combine prospect branding with sourced meeting context.

Generate branded websites

Map the same brand context into editable website tokens.