Your Canva Template, Respected.
It duplicates your template and edits the copy — it never touches your original. Transactions, not guesswork: element IDs come from the API response, and unusable cards get renamed, never deleted.
Standalone Skill
Feed it a quote, a name, a role, and a photo. Get back a branded 1080×1080 card — recolored to your exact palette, circular portrait, ready to post — wired into your page. Canva if you have it. Its own template if you don't.
Two ways in
No Canva account? Nothing stops. The bundled HTML template renders the same card through headless Chrome — stars, quote, script name, circular photo — driven by your brand config.
It duplicates your template and edits the copy — it never touches your original. Transactions, not guesswork: element IDs come from the API response, and unusable cards get renamed, never deleted.
A post-process script corner-samples the background and blends to your hex while preserving the anti-aliasing — no jagged edges, no close-enough blue.
Client photos composited as clean circles with your ring color. Fair warning: re-exporting from Canva loses the face — the skill tells you so, and re-runs the step.
The hard rules
Every name and quote traces back to a source — this skill sits downstream of a qualification gate, and it acts like it.
Real, verifiable clients only. If a name can't be traced, it doesn't become a card.
Files are versioned. Your Canva template is duplicated, never edited. What you had before the skill ran, you still have.
Cards get wired into your page with the stories that match the offer first — overflow goes under its own subheading, not deleted.
Get started
Clone it, hand it harvested material, and get back cards worth posting.
$ git clone https://github.com/MyAiFreedomSystems/graphic-testimonials.git
# drop the folder in your agent's skills directory. done.
Pair it with Harvest-Testimonials and the whole pipeline runs itself.
Get Graphic-Testimonials On GitHub →