plunk-it

Plunk-It's working demo — three commands wired through Plunk

Plunk-It crossed from infrastructure to working demo on August 15, 2025: Send Email, Create Campaign, Send Campaign — three commands inside Obsidian, talking to Plunk's API, doing the thing. Logged retrospectively from 2026 to seed the changelog the convention now requires.

Why Care?

If you draft long-form content in Obsidian — newsletter issues, founder updates, company-wide notes — there's a stubborn last-mile problem: the draft is in markdown, but the destination is Plunk (or another transactional email service). You copy, paste into Plunk's editor, lose your formatting, redo the formatting, send. Plunk-It exists to remove that last mile.

This is the retrospective for the day Plunk-It first delivered on that promise — three commands operating against a real Plunk workspace, sending real campaigns.

What's New?

(All historical, captured retrospectively.)

  • refactor(main, services): refactor main and services to be a more generic starter kit. remove legacy citations code (2025-07-19) — the cleanup pass that gave Plunk-It a clean canvas to build on.

  • milestone(working-demo) Working demo with Send Email, Create Campaign, Send Campaign using Plunk (2025-08-15) — the first day Plunk-It actually did Plunk things. Three commands, all hitting a real Plunk workspace, all working.

  • A burst of follow-on work over the next 48 hours: Update Campaign command, working backlinks, README work — the plugin moving from "a demo works" to "the demo works and the documentation explains it."

The arc

Plunk's API is well-documented and JSON-clean, so the wire-level work was the easy part. The shape of the plugin took longer — what's the right command granularity? Should "Send Email" send the active note as the email body, or open a modal that lets you compose? Should the contact list come from frontmatter, settings, or a separate config file? Each decision had to land before the demo could feel coherent.

The August 15 milestone was the first day all three commands felt like one plugin instead of three experiments. That's why the commit got the "milestone" prefix — it wasn't just that the API calls worked; it was that the seams between the commands disappeared.

What this enabled

Plunk-It as it exists today is essentially the August 15 demo, plus polish:

  • Configurable contact metadata (added 2025-08-18) instead of the hardcoded 'client' that the original demo used.

  • Backlinks awareness (the "working backlinks" milestone) so the plugin can render link relationships when generating campaign content.

  • Settings tab with full Plunk workspace configuration.

The "send your draft as an email straight from the editor" pitch on the content-farm splash is the August 15 demo, productionized.

Retrospective notes

  • Written 2026-05-04, nine months after the working demo.

  • The repo name plunk-it is the kind of name that only sounds good after the plugin works. On August 15, 2025, the name retroactively became fine.

  • The early commits visible in this repo's log (June–July 2025) predate Plunk-It's identity and aren't really part of its history. Repository ancestry artifact; not relevant to the substance here.