The win: first asset
Draft a minimal brand file and generate your first asset from it in the first half hour. Perfect comes later; producing comes now.
Done looks like An asset on screen, from your brand file.
Encode your brand as code — tokens, voice rules, anti-references. Then build a generator that turns out on-brand social cards, OG images, and slides without you reviewing every export.
Taught 2,000+ professionals — cohorts, fellowships, teams
Start here
Brand assets are everything your brand ships as an image or a page: social cards, OG images, slides, banners. Most teams keep the brand in a PDF style guide and remake every asset by hand. The PDF can't produce anything, and it can't steer an AI either.
Then you know the tax. Every variation is a manual pass, and raw AI output breaks the brand a new way each time. Engineering flips it: the brand is encoded once as a machine-usable file, and generators built on it produce the variations while the brand stays locked.
What varies is the input. What's locked is the brand.
Either way you leave the same: on Monday you ask for an asset and get one that's already on-brand, because the system you built in the session did the producing.
You leave with
Who it's for
Agenda
Session one · 2 hours
Show & tell: encode the brand
Watch every block built live on a real brand, end to end.
Between sessions
Your turn
Run every block on your own brand — homework, with help in the community.
Session two · 2 hours
Bring your build: the generator
Session two starts from the file and the questions you bring.
Every session is recorded
Session one · Watch it built: encode the brand · 2 hours
Draft a minimal brand file and generate your first asset from it in the first half hour. Perfect comes later; producing comes now.
Done looks like An asset on screen, from your brand file.
Encode colors, type, spacing, and logo rules as tokens — what agents need, which is not what style guides usually say.
Done looks like Your brand's visual truth, in one file.
Voice as rules, not adjectives: five rules, five banned patterns, two before/after pairs.
Done looks like Copy the generator can't get wrong the same way twice.
The fastest brand fence is what you are not. Add anti-references, regenerate the first asset, and compare the drift.
Done looks like Brand file v1, complete and holding.
Between sessions · Your turn
Run blocks 01–04 on your own brand, note where it fights you, and bring the file and the questions. Stuck points get answered in the community along the way.
Session two · Bring your build: the generator · 2 hours
One template, many inputs. Scaffold it — input, brand file, asset out — then produce five assets from five different inputs.
Done looks like Five assets, one brand.
Two tests: would a teammate accept all five as on-brand, and does the file reject an off-brand request? Fix the file, not the outputs. Then rank what to generate next.
Done looks like A generator passing both tests, and a ranked backlog.
Proof
Instructors
Lead instructor. Product designer, 2,000+ professionals trained across cohorts and fellowships, designing agentic products in production today.
Co-instructor. Building the course material with Madhuri. Bio and receipts land on the instructors page.
Price & rooms
$499 per seat · October cohort · live online, recorded. First room to reach eight runs; dates set at least two weeks ahead. Your pick pre-fills the WhatsApp message.
FAQ
Yes. Encoding an informal brand is the workshop working as intended: you leave with the formal version.
No. The brand file is structured text and the generator runs as a Claude skill. Claude Code extends what you can build, but isn't required.
You pick one to build — social/OG cards or slides are the usual first pick. The backlog covers the rest.
It's the introductory-cohort price. The first cohorts shape the format, and the price says so. It rises for later cohorts.
Every session is recorded, and the building happens between sessions on your own time. Follow the recording and bring questions to the community.
Seats
Pick your room above — the WhatsApp message pre-fills.