Postwright

Own your publishing stack.

Blog, newsletter, social, and video – drafted, scheduled, and published from a Mac you already own.

You write in markdown, in whatever editor you like. Postwright does the rest, and it does it in the right order: the blog goes live, then the newsletter links to it, then the social posts go out with the real URL. One payment, no subscription, no per-subscriber pricing, and nothing routed through anyone else’s servers. The video engine that cuts your Shorts is free.

Get the video engine free

One-time purchase · 14-day refund · Apple silicon Mac, macOS 14+ · free updates

// why I built this

Publishing consistently is a second job, and most of that job is clerical. The blog post has to go up. The newsletter has to link to it, but only once it’s actually live. Four social companions have to be written differently for four platforms, scheduled so they don’t collide, each one carrying the right link. Then there’s the video, and the clips from the video. Miss a step and something ships broken; skip the whole thing and the work never reaches anyone.

The tools for this all exist. There’s one for clipping, one for scheduling, one for email, one for the blog, one for keywords – and not one of them knows what the others are doing. Your scheduler has no idea whether your blog post is live. Your email tool has never heard of the Short you posted this morning. So you check, you copy, you paste, and you hold the whole sequence in your head. The tools moved the work. They didn’t remove it.

They’re also subscriptions that watch your usage, upload your footage to someone else’s servers, and change their pricing the month you start depending on them. I didn’t want to rent my own content pipeline.

So I built Postwright.

It started as the internal platform behind Step Zero, my own newsletter, and it ran there for a good while before it was anything anyone could buy. You point it at a folder of markdown – Obsidian, iA Writer, VS Code, plain Finder, it doesn’t care – and a file watcher picks up your saves within about a third of a second. From there it drafts what’s missing, lays everything out on a calendar, and publishes it in the order that actually works.

You pay once. You get the signed installer and a guided setup that asks for your keys and wires everything up. It runs comfortably on a Mac you already own, so your ongoing cost is zero. You own the install, you control the data, and you’re not paying anyone anything after today.

// what it runs

Four engines. One calendar.

Most tools in this category do one channel well and leave you to wire up the rest. Postwright runs four publishing engines off the same content and the same schedule, which is what turns a folder of drafts into a week that actually ships.

The video engine is free. The other three, plus the calendar that coordinates all four, are what Pro is.

One content folder in. Four engines, coordinated by one calendar, publishing to destinations you own.

Video

Free

Drop a long-form video and its transcript into a watched folder. Postwright reads the transcript, picks the moments worth clipping, renders them vertical with a face-aware crop so the speaker stays in frame, and drafts titles and captions tuned to each platform. You approve the long-form, then approve or reject individual Shorts from the review screen. ffmpeg does the cutting on your machine, so no footage goes to a third party.

Blog

One document becomes an MDX file in your repo. Postwright writes the post, copies the hero image in, commits just that post’s files, pushes, and then polls the live URL until the page actually answers. Meta descriptions get trimmed to 160 characters on a sentence boundary, so the dek never dangles mid-thought, and republishing a correction refreshes the record instead of erroring out. Not on git? There’s a folder publisher for static-site generators and a signed webhook for everything else.

Newsletter

HTML email through Resend or Mailgun, sent from your own verified domain, with a CAN-SPAM footer, unsubscribe and preferences links, and UTM tagging throughout. Subscribers arrive through double opt-in with signed tokens and get sorted by engagement tier, segment, and frequency preference. Drip sequences are folders of markdown with delays and branching – nobody opened step one after 48 hours, so resend it with a different subject; somebody clicked the booking link, so halt the sequence, they converted. Your list lives in a database file on your machine, which means it costs the same at 200 subscribers as at 20,000.

Social

From one blog post the drafter writes four distinct companions – LinkedIn, Facebook, Instagram, Threads – in your voice, inside each platform’s length bounds, with the blog link going in the first comment. LinkedIn and Facebook post through your own logged-in browser session; Instagram and Threads go through the Graph API with tokens that rotate themselves every 60 days. Point it at a positioning file and the drafter reframes retired language as it writes – edit that file and the next draft picks it up, no restart. Comments get checked daily, and you hear about it when the count moves.

// the part that makes it a system

One document. One calendar. The right order.

Anything can post to LinkedIn. What almost nothing does is know that your blog post went live thirty seconds ago, and that the newsletter waiting behind it should go out now, with that URL in it.

Postwright treats a piece of content as one document that fans out to every channel it belongs on, and it enforces the order those channels need. Blog first, because that’s what creates the canonical URL, then the newsletter linking to the post that now exists, then LinkedIn with that link in the first comment, then Facebook, Instagram, and Threads, and finally the video.

Nothing ships out of order, nothing ships to a dead link, and nothing needs cleaning up afterward.

An auto-placing calendar handles the layout – a cadence grid informed by an engagement heatmap that rebuilds itself weekly from your own metrics. You review from a dashboard and approve, or you let the cadence run.

One document scheduled across a week. The newsletter is gated on the blog going live; the queued items took the best slot the heatmap knew about.

A newsletter won’t send to a broken link.

When a newsletter links to a blog post, Postwright HEAD-checks the URL and holds the send until the page answers. Your subscribers never get an email pointing at a 404. Owning both ends of that handoff is the only way to promise it.

Queue it, and it lands in your best slot.

Pick a fixed time when you want one. Otherwise queue it, and the scheduler places it in the next slot with the highest historical engagement – on your numbers, from your own channels, rebuilt weekly as the data changes.

Pull one thing and its dependents come with it.

Cut a published blog post back to draft and its social companions cancel themselves. Reject a Short in review and its queued posts across YouTube, LinkedIn, Facebook, and Instagram cancel too – non-destructively, so the drafts stay and only the schedule clears. You don’t go hunting.

It tells you when it fails.

Due schedules get checked every minute, and a failure retries up to three times. When a commit or a push genuinely fails, Postwright surfaces the failure instead of recording a phantom success, so the dashboard always matches reality.

// what you actually own

It runs on your machine. That’s the whole design.

Your footage, your transcripts, your subscriber list, and your logged-in posting sessions all stay on the Mac you installed it on. There’s no Postwright server in the middle, and the platforms without a clean public API get driven through a real browser session that belongs to you – so posts go out as you, from your account, with nothing passing through a middleman.

You bring your own AI keys: Anthropic, OpenAI, or Google, or the Claude Code subscription you already pay for. The heavy lifting happens locally and the AI gets used surgically, so the token bill stays small. Keys are encrypted at rest and never leave your machine except to call the API they belong to.

The license is perpetual and it never phones home to keep working. If I stopped maintaining Postwright tomorrow, your install would keep running exactly as it does today. The worst case is that you stop getting updates, which is the same worst case as any other self-hosted tool.

One thing to be upfront about

Because Pro publishes for you, it needs a blog and newsletter destination you control. A self-hosted site – a Git repo on GitHub, deployed on Vercel, with email through Resend – works out of the box (it’s the exact stack Postwright runs on), and YouTube and LinkedIn are built in. WordPress takes some setup, Substack isn’t supported, and tools like Beehiiv or Go High Level would need custom work. See exactly what works →

// the offer

Own it once. No clock running.

The subscription tools that do a fraction of this run $30–$100 a month, forever, watching your usage. Postwright is a one-time purchase you self-host and own. Start free with the video engine; step up to Pro when you want the blog, the newsletter, the social cadence, and the calendar that keeps them in order.

Studio

Freewith newsletter

  • The video engine, end to end
  • Drop-a-video → Shorts + platform copy
  • Auto-publish to YouTube, LinkedIn & Meta
  • The video-review dashboard
Get Studio free

Blog, newsletter, social cadence, and the scheduling calendar are Pro.

Pro

Most popular

$199one-time

  • All four engines, not just video
  • The scheduling calendar + ordered publishing
  • Editorial intelligence + SEO tooling
  • Single operator, your own brand(s)
  • Free updates + Discord & email support

Team

$499one-time

  • Everything in Pro
  • Commercial / agency use across client brands
  • Up to 25 people in one organization
  • Each operator runs their own install

One license key covers the whole team – every operator installs from the same download.

Pro & Team include

  • Everything in Studio (the full video engine)
  • Blog publishing pipeline – commit, push, deploy, verify
  • Newsletter engine with drip sequences + subscriber management
  • The tri-doc social drafter + recurring cadence
  • The scheduling calendar – ordered publishing, heatmap timing, cascades
  • Editorial intelligence that learns from performance
  • SEO tooling (keywords, analytics, search-console)
  • The web dashboard + approval center
  • AI social art + blog hero images
  • Free updates while Postwright is maintained

What happens after you buy

Your license key lands in your inbox right after checkout, with a link to download the signed macOS installer. Most people are up and running the same day. Everyone gets Discord access and direct email support – it’s just me on the other end, so you’re talking to the person who built it. If it doesn’t work for your setup within 14 days, reach out and I’ll make it right – either we fix it together or I refund you.

Secure checkout by Stripe · instant license delivery · 14-day refund · prices exclude any applicable tax · sold to US customers only · license terms

// questions

Questions you’d probably ask

I don’t publish video. Is Postwright still for me?+

Yes. Video is one of four engines, and the other three don’t depend on it. The blog pipeline, the newsletter engine with its sequences and subscriber management, the social drafter, and the scheduling calendar all work on their own – you can run Postwright for years without dropping a single video file into it. Pro is the tier that covers those three; the video engine is the piece that’s free.

What exactly is the free Studio tier?+

Studio is the video engine and nothing else: drop a video and its transcript into a watched folder and Postwright cuts the vertical Shorts, writes platform-tailored copy, and publishes the long-form and clips to YouTube, LinkedIn, and Meta, with a dashboard to review and approve. It’s free with a Step Zero newsletter subscription. Blog publishing, the newsletter engine, the social cadence, the scheduling calendar, editorial intelligence, and SEO are all Pro.

Where do I actually write?+

In markdown, in whatever editor you already use – Obsidian, iA Writer, VS Code, or just Finder and a text editor. You point Postwright at a folder and a file watcher syncs your saves into its local database within about a third of a second. Postwright owns scheduling, publishing, and metrics; it doesn’t try to own your writing.

How does it decide when to post?+

Two ways. Set a fixed time and it posts then. Or queue it, and the scheduler places it in the next slot with the highest historical engagement for that channel – drawn from an engagement heatmap built out of your own metrics and rebuilt weekly. An auto-placing calendar lays the week out on a cadence grid. Due schedules are checked every minute, and a failed send retries up to three times before it surfaces as a failure.

Where does it run – is it hosted?+

It’s self-hosted on your own machine (macOS). Your footage, transcripts, subscriber list, and logged-in posting sessions never leave it. That’s deliberate: Postwright drives real browser sessions for the platforms that don’t offer a clean public API, so posts go out from your own accounts, and video is cut locally with ffmpeg. There’s no Postwright server in the middle.

What are the system requirements?+

An Apple silicon Mac (M1 or later) running macOS 14 or newer. The installer is a signed, notarized per-user package – no admin password needed – and it bundles what it needs. ffmpeg is required for the video engine, and the one-time Chromium download for browser automation happens automatically on first run.

How hard is the setup?+

There’s a guided setup: run the installer, paste your keys, pick your content folder, and it creates the directories, writes the config, and walks you through the one-time platform logins. Prefer to do it by hand? It’s a documented self-hosted app – skip the wizard and configure it directly.

What does the Team license cover?+

Commercial and agency use: up to 25 people in one organization, so a team can run content operations across multiple client brands. One license key covers everyone – each operator downloads the same installer, runs their own install, and activates with the shared key.

Which platforms does it publish to?+

Your blog (via a git repo, a static-site folder, or a signed webhook), email through Resend or Mailgun, and then YouTube (long-form and Shorts), LinkedIn (personal and company), Facebook Pages, Instagram (Reels and feed), and Threads. Some go through official APIs; others go through logged-in browser automation on your machine. You do a one-time login per platform during setup and Postwright reuses that session.

Do I need to know how to code?+

No for the guided path – the installer does the wiring. It helps to be comfortable installing an app and pasting API keys. The more advanced pieces (custom blog deploy targets, SEO providers) are documented, and you can hand the docs to Claude Code or any AI assistant to move faster.

What if you stop maintaining Postwright?+

You keep everything. Your license is perpetual, your install keeps running on your machine, and it never phones home to keep working. You’re not dependent on a hosted service. The worst case is you stop receiving updates – the same as any self-hosted tool.

What if it doesn’t work for my setup?+

Reach out within 14 days. Either we’ll fix it together or I’ll refund you.

Own the whole operation.

The video engine is free with the newsletter. Pro is the rest of it – blog, newsletter, social, and the calendar that keeps them in order – bought once, self-hosted, yours for good.

Get the video engine free