Skip to content

M1: Operator link — Grip-clone Studio (Polotno + R3F + Postiz + Nango + PostHog) #32

Description

@ninan-versioning

The Operator link

Build shoploop.studio/op/{slug} — the Grip-clone Studio for operators, artists, marketers. Better than grip.tools, full-funnel positionless AI marketing.

One line: Polotno UI + React Three Fiber viewport + molecule library (MolecularNodes) + Omniverse Kit scene + Postiz publisher + Nango-brokered ad/CRM connects + PostHog analyst, driven by the same USD twin the Configurator link streams to shoppers.

Why this link exists

The Operator link runs the funnel. But to close it, the operator needs to see how customers are actually playing with the product — spins, swaps, drop-offs, wellness-pack composition. That signal lives on the Configurator link (#31). Same Pimcore, same PostHog partition, same brand_rules. This is why we ship both in one repo, not two.

Scope (M1)

  • apps/operator-studio (Next.js on Vercel) — routes: /op/{slug} (scene canvas), /op/{slug}/campaigns (Postiz + connects), /op/{slug}/analytics (PostHog embed)
  • Polotno canvas with the USD twin loaded as a rasterized layer + 2D copy overlay. Trilingual layers day-one (hi/en/mr).
  • R3F viewport for orbit + camera rig editing. Multi-camera preset picker (hero-shot / 45° / top-down / macro).
  • Molecule library panel (MolecularNodes) — search + drag molecules onto product surface as decal or macro-camera overlay.
  • Omniverse Kit connection via streaming iframe (delegated to Configurator link's Kit-App-Template on AWS; we don't duplicate the render stack).
  • Postiz publisher panel — schedule/publish rendered variants to Meta, Google, TikTok, YouTube Shorts. Uses forked Postiz on AWS with hi/mr locales.
  • Nango connect wizard for optional secondary data sources (Google Ads, Meta, Klaviyo, GitHub, Shopify). All optional — Loop 1b, secondary.
  • PostHog analyst panel — funnel from ad click → configurator session → ATC → checkout. Session replays with rage-click detection.
  • Pimcore write-back — every published variant + campaign + connect state persists to the shared product record via packages/pimcore-sdk.
  • Multi-tenant isolation: slug = {customer_id}--{url_hash}. Row-level security in Postgres.

Reference architecture

Frontend on Vercel. Kit streaming + Pimcore + Postiz workers + Nango + PostHog all AWS. Never Vercel for GPU.

Grip-clone attack matrix

Dimension grip.tools Shoploop Operator link
Onboarding Agency install, weeks Paste a URL, seconds
UI Grip Template Engine (closed) Polotno + R3F (open)
Ad publishing Manual export → agency runs ads Postiz publishes directly
Ad connects Manual Nango-brokered OAuth
Customer-side loop None Configurator link streams every interaction
Pricing $500k/yr $0 OSS / $299/mo managed
Cloud Azure AWS (streaming) + Vercel (UI)
License Closed AGPL-3.0

Success criteria

  1. Operator pastes a URL on shoploop.studio, lands on shoploop.studio/op/{slug} within 5s warm.
  2. Can compose a multi-camera shot rig, add molecule decal, publish 3 variants to Meta via Postiz — all in one session.
  3. Analytics panel shows real PostHog data from the paired Configurator link.
  4. Nango connect wizard successfully brokers Google Ads + Meta OAuth for a test account.
  5. Every published variant appears in Pimcore with campaign_id, variant_id, brand_rules_hash.

Cost envelope

Decision-gate answers

  1. Varitea dogfood critical path? Yes — Varitea's paid campaigns run through this surface.
  2. Deepens moat? Yes — the Operator↔Configurator feedback loop is what nobody else has.
  3. Mistral cheaper? N/A — this is UI + orchestration, not inference.
  4. Ships in ≤2 weeks solo? M1 scope is 3 weeks solo. Push analytics panel to a follow-up if we overrun.
  5. Monthly cost? ≤$150/mo shared infra.
  6. Non-URL intake? None — all Operator actions attach to a URL-paste tenant.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    P0Critical path — ships v0.1 or blocks releasearchitectureSystem design / cross-repo contractrev:acquisitionDrives new merchant or new customer signalthreatCompetitive response requiredwedge2D→lifestyle wedge / dogfood critical path

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions