publishing, audience, and interaction

the stateful tools
your static site cannot provide.

Start with publishing or one interactive surface. Add reader analytics, audience capture, and moderation when they become useful — all in the same workspace.

start with the job

get one useful thing working first

You do not need to adopt the whole toolkit. Pick the outcome your site needs now; the rest will still be there later.

Receive a contact

Put a form on the site, keep suspicious submissions in review, and track the conversations that still need a reply.

set up a form →

Publish an article

Write and schedule a Markdown-backed post, then trigger the static-site build when it is ready.

connect publishing →

Hear from readers

Add comments or reactions to an existing article without rebuilding the site around another platform.

add comments →

Using React, Solid, or plain HTML? Choose your integration →

community

Reader participation without handing your traffic to a third-party JS monolith.

Comments

Threaded replies. Moderation queue, approve/reject/delete. No reader signup — they type, they send.

Reactions

Hearts, claps, bookmarks, thumbs. Per-page, anonymous, lightweight. Signal without the noise.

Polls

Multi-choice, anonymous, real-time tallies. Ask "Should I write part two?" at the bottom of a post and see the response.

Feedback

Readers send bugs, feature ideas, and notes. You triage them privately in the dashboard: new, reviewed, resolved, archived.

growth

The widgets that turn visitors into a direct audience around your site.

Email subscriptions

Double opt-in, per-post notifications or weekly digest, and one-click unsubscribe. Build a direct audience around your site.

Waitlist

Pre-launch signups with status tracking. See who is waiting and move each entry from waiting to invited or converted.

Forms

Contact forms, surveys, custom fields. Honeypot + AI spam checks. Submissions stay actionable in the Jamwidgets Inbox with their history.

publishing

A focused headless CMS underneath the widgets. Write in TipTap, store in Markdown, schedule or publish immediately. Drafts for already-published posts — edit, review, publish the diff. Generate a clean excerpt from the opening text when you need one.

On Team, publishing fires your Vercel or Netlify deploy hook, or a GitHub repository_dispatch event, so your build fetches the new post without you touching CI. Image uploads handled, asset URLs returned.

Jamwidgets dashboard · posts
╭─ draft ─────────────────────────────────╮
│ title      the case against newsletters
│ slug       /case-against-newsletters
│ excerpt    (auto-generated, edit if you want)
│ scheduled  tues 08:00 pt
│ status     draft → queued to publish
╰─────────────────────────────────────────╯

# on publish
✓ repository_dispatch sent → github:tim/blog
✓ site rebuild fetches the post (your CI)
✓ subscribers notified (142 emails queued)

photos and agents

Two more ways to keep a static site current without a rebuild for every change.

Galleries

Upload photos once and organize albums in the dashboard; Jamwidgets resizes them to WebP. Embed every published gallery, one album or tag, or a seeded random photo, without rebuilding your site.

Embed a gallery →

Agents over MCP

Connect an MCP client to review the inbox, draft and edit posts, and schedule or publish them. Access is scoped: reading, writing, and publishing are separate permissions you can revoke.

Connect an agent →

site-wide

The small things that need to sit across pages instead of inside one.

Announcements

Top-of-page banners, dismissible per-reader. Schedule start/end. Link-in, done.

Page views

First-party view tracking per page, path, and day, with dashboard charts for the signals that matter. No cookies and no cross-site tracking.

Team & roles

Email-invite teammates at Owner / Admin / Editor / Viewer. Editors write posts, admins moderate, owners own billing.

ready when you are.

Start with one site for free, including the CMS, analytics, widgets, spam protection, and MCP. Team is $39/month for multiple sites, collaborators, higher limits, and governance.