← BACK TO work
Flagship product2026v1.0 shipped · sellable

Repurpose Studio

Write once, publish everywhere.

The problem

One Substack essay had to be reshaped for LinkedIn, X, Instagram, Threads, Bluesky and video, then scheduled and published through separate tools. The repeated work also risked sanding the writing down into a generic AI voice.

What it does

A zero-cost, self-hosted content engine. It ingests long-form writing, rewrites it in the author’s own voice per-platform, generates carousel images and TTS video voiceovers, then publishes directly through each platform’s native API on a self-built scheduler. It learns from every edit you make, so the voice stays yours.

Generation runs through Claude in headless mode — no per-call API billing, no third-party tools in the loop. Ships two ways: a clean product ZIP buyers run themselves, or hosted behind a signup-code gate.

Why it is built this way

I built the whole loop locally: ingest once, generate per-platform drafts, learn from my edits, render the assets and publish through each platform's own API. Claude Code headless uses the subscription I already have, so there is no per-call bill or third-party scheduler; Instagram stays manual because Meta requires a publicly hosted image URL that a private local app cannot provide.

What was hard

Windows path escaping broke ffmpeg's subtitle filter, so video rendering switches to relative filenames and a controlled working directory. The ship-ready pass also had to guard malformed model output after it produced `undefined` drafts and fix missing follower snapshots that rendered as `undefined` in the planner.

Outcomes

  • 5 platforms from one draft
  • Zero API spend
  • Learns from your edits

Stack

Node.jsExpressClaude headless CLIPlatform APIsJSON store

PRODUCT IN USE

Repurpose Studio — The Desk — every piece in one queue
Repurpose Studio

The Desk — every piece in one queue

Repurpose Studio — Calendar — what ships, and when
Repurpose Studio

Calendar — what ships, and when

Repurpose Studio — Voice — the profile drafts are written against
Repurpose Studio

Voice — the profile drafts are written against

Repurpose Studio — Pulse — what the writing actually did
Repurpose Studio

Pulse — what the writing actually did

Repurpose Studio — Calendar
Repurpose Studio

Calendar

Repurpose Studio — Engage
Repurpose Studio

Engage

Repurpose Studio — Ideas
Repurpose Studio

Ideas

Repurpose Studio — Pieces
Repurpose Studio

Pieces

Repurpose Studio — Planner
Repurpose Studio

Planner

Repurpose Studio — Pulse
Repurpose Studio

Pulse

Repurpose Studio — Signin
Repurpose Studio

Signin

Repurpose Studio — Voice
Repurpose Studio

Voice

Repurpose Studio — Write
Repurpose Studio

Write