flypod
Guides

Enable comments on a site

Turn on the anchored comments widget for a deployed site, choose an access mode, and read the review feed.

Comments run on any site you own. Enable them and every page gets a floating panel where visitors can highlight any passage and leave a note anchored to that text.

The full model is in Concepts: Comments.

Turn it on

At deploy time

Pass --comments to deploy and enable in one step:

flypod ./dist --comments

Add --mode to choose a mode other than the default anonymous:

flypod ./dist --comments --mode approved

On an existing site

flypod comments enable --site <site-id>
flypod comments enable --site <site-id> --mode passcode --passcode mysecret

From the dashboard

  1. Open https://flypod.dev/account.
  2. Find the site card and click Enable in the Comments row.
  3. The mode flips to Anonymous and the widget is live on the next page load.

The widget is injected into every HTML response from the site. Static assets, JSON endpoints, and JS bundles are untouched.

The widget loads from the same site host (https://<your-id>.flypod.dev/_flypod/widget.js), so there is no third-party origin to add to your CSP.

What visitors see

A Comments button in the bottom-right corner of every page. Clicking opens the panel.

Visitors can also highlight any passage to get a Comment on this pill. Clicking it opens a composer next to the selection with the quoted text at the top. The thread is anchored to that exact passage.

The In-page toggle (shown once at least one thread is anchored) floats a pin in the page margin next to every anchored passage. Click a pin to read and reply inline.

Picking a mode

The mode controls who can read and post, and is enforced on the server. Change it from the dashboard, the CLI, or at deploy time.

ModeWho can read / postRight for
Anonymousanyone, with a pseudonympublic drafts
Passcodeanyone holding the shared passcode (reads + writes gated)semi-private review
Approvedanyone may post, but posts stay hidden until you approvemoderated / high-traffic
flypod comments enable --site <id> --mode approved
flypod comments mode passcode --site <id> --passcode mysecret
flypod comments off --site <id>          # disables the widget (data is preserved)

The retired v0.1 mode names still work as input: open maps to anonymous, and review/members map to approved.

Identity

Each visitor gets a pseudonym scoped to that site, like calm-otter-1234. The same person visiting a different flypod site gets a separate identity there — cookies are scoped per subdomain.

Visitors can rename themselves at any time. The new name applies to all their past comments immediately.

Read the inbox

From the dashboard

The Comments row on the site card shows the current mode and a quick inbox view.

As JSON-LD

curl -s https://<id>.flypod.dev/comments.json | jq

Returns a W3C OrderedCollection of annotations. Per page:

curl -s https://<id>.flypod.dev/about.comments.json

In Anonymous and Approved modes the feed is public, with pending items still hidden from third parties. Passcode mode requires a valid grant or owner identity.

The package contains MCP and webhook primitives, but hosted flypod.dev does not yet issue usable agent tokens or dispatch outbound webhooks. See the comments hosted status.

What does not work yet

  • Editing posted comments. A posted comment is immutable. Visitors can rename themselves; owners can moderate threads in Approved mode.
  • Hosted MCP and webhooks. The underlying primitives exist, but their hosted authentication and delivery integration is unfinished.
  • Realtime push. Clients poll today.
  • Embedding on non-flypod sites. The widget assumes same-origin endpoints under /_flypod/. Embedding lands in v0.2.

On this page