Navin

Marketing desk UI

Studio #/marketing is the Marketing Agent OS. It talks to /api/marketing (same store as the marketing tool). Chat stays optional.

Stack

LayerWhat you get
Fluent UIButtons, fields, MessageBar, ProgressIndicator, theme
framer-motionPane transitions
three + R3F + dreiMarketingScene: heat follows winners / armed, motion follows the live loop. Designed 3D, not wallpaper. Orbit controls. Pauses when reduced-motion or off-screen.

Header

ControlActionTest id
Refreshsnapshot-
ChatToggle the composer-
Start loopOpens the schedule panel, then startmarketing-start-loop
Pause loopstopmarketing-pause-loop
Scheduleschedule (hours only, does not enable)marketing-schedule-loop
Run cycletick with force=truemarketing-tick-loop

Start loop is disabled until the desk is armed. While a request is in flight, controls show busy.

If the first snapshot fails, the desk shows the error and Try again. While the first load runs, a ProgressIndicator is shown.

When the loop is enabled the desk refreshes every 12 seconds.

Panes

PaneWhat you do
OverviewKPIs, loop status, harvest snapshot (one-liner, headings, CTAs, social links), Use current project, Harvest the live site, Launch product
BrandCompany, tone, audience, harvested colors / fonts / logo → brand
ProductUnderstand / position / research (market, trends, keywords)
CampaignsPlan 30 days, Approve (upsert, no duplicate campaigns)
Content / SocialWrite channel variants (upsert per channel + campaign)
StudioGenerate brand kit (pack=brand), Generate post images (pack=posts), Generate this (creative_id)
Visual QADesk creatives + workspace shots (visual_qa, reports, human override)
SEOKeywords from harvest / research + Ingest measured ranking (never invented)
AdsSpend hint, harvested / produced creative previews, seed /ads (never spend without a human click)
AnalyticsTraffic / leads / signups / revenue + per-content views / clicks / conversions → metrics
CompetitorsAdd a named competitor
LaunchBuild launch kit (Markdown files under launch/)
JournalLoop, watch and alert lines. Empty state if the book is new.

Nav icons are Fluent icons. Copy is i18n (studio.marketing.*, studio.marketingQA.*) in English and French.

Planning panel

TradingLoopSchedulePanel with Marketing i18n keys:

  • kind: daily, weekdays, weekend, weekly, monthly
  • hour / minute, weekday, day of month
  • timezone = browser IANA zone
  • optional Also run a cycle now (run_now)

Visual QA

The QA pane is MarketingQA. It lists workspace images, runs the gate, and records an audited human override. The machine verdict stays on disk. French copy lives under studio.marketingQA.

What is not this desk

RouteRole
#/adsLive paid-media MCP
#/seoFull SEO studio
#/montageLive demo + social video exports

Those studios do not replace the Marketing book. Ads spend and Montage exports stay propose-or-human-click.