Skip to content

Decide whether and where to publish the widget to npm (heed-widget) #40

Open

Description

@thorwhalen

What is needed: a decision, and if yes an npm token. The widget now has an ES module package (widget/, built by npm run build:lib: heed-widget → registers <heed-feedback>, heed-widget/react → the React wrapper, a lazily imported screenshot chunk, type declarations). It is marked "private": true, so nothing has been published.

Without npm, sites use the served loader (one <script> tag, the main path) and React apps can render <heed-feedback> from it; only apps that want to bundle heed (and use <HeedFeedback> with typed props) need the package.

Recommendation: publish as heed-widget (free on npm as of 2026-10-13; @i2mint/heed-widget is also free if an i2mint npm org exists). Remove "private": true, add an NPM_TOKEN repository secret, and add a publish job to .github/workflows/widget.yml triggered on a widget-v* tag (so PyPI and npm releases stay independent). Publishing is hard to undo (npm unpublish limits), which is why this waits for you.

Not blocking: the widget issue (#6) is complete without it; the wrapper is built and tested from source in CI.

Activity

  1. added
    manual-taskRequires the repo owner at the keyboard — agent cannot proceed on its own.
    on Oct 13, 2026
  2. thorwhalen commented on Oct 30, 2026

    @thorwhalen
    MemberAuthor

    Owner, via the phone task board (2026-10-30, bulk): Accept the recommendation: Publish the widget to npm as heed-widget: remove "private": true and add a publish job triggered by widget-v* tags.

    Queued for a worker; it will link its PR here.

  3. thorwhalen commented on Oct 30, 2026

    @thorwhalen
    MemberAuthor

    Workflow change: #92. The owner's part (NPM_TOKEN secret, first tag) is tracked in #93; this issue stays open until heed-widget is published.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    manual-taskRequires the repo owner at the keyboard — agent cannot proceed on its own.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions