open-index/open-npm huggingface dataset:
npm package: @funnelfish/widget
Description: The drop in recruiting widget
Author: Carlos Lahrssen
Latest version: 0.1.0

# fishbait

Our drop in FunnelFish widget

## CLI Commands

``` bash
# install dependencies
npm install

# serve with hot reload at localhost:8080
npm run dev

# build npm ready bundles to be consumed by other Preact web apps
npm run build:widget

# build npm ready bundles to be used as a component library
npm run build:lib

# lint the project with eslint to find code style issues
npm run lint

# run tests with jest and enzyme
npm run test
```
npm package: @funnelsgrove/analytics
Description: Shared public analytics SDK helpers for funnels.
Latest version: 0.1.0

# @funnelsgrove/analytics

Shared public analytics SDK helpers for funnels.

## Build And Publish

- Build distributable output with `npm run build --workspace @funnelsgrove/analytics`.
- Publish from the repo root with `npm publish --workspace @funnelsgrove/analytics --access public`.
- Local repo installs still resolve this package through npm workspaces when another workspace depends on version `0.1.0`.

## Use This Package For

- browser user-id persistence
- public analytics event batching and transport
- identify/track helpers for the public SDK
- identify bootstrap helper for funnel identity
- local-only fallback when only the seed publishable key is present

## Responsibilities

- keep client identity stable across funnels
- own the browser storage contract for the external user id
- send analytics events through the shared API contract
- avoid noisy network calls when a real publishable key is not configured

## What Belongs Here

- cookie/localStorage identity helpers
- public SDK wrappers
- event normalization and transport

## What Does Not Belong Here

- step routing
- manifest logic
- Stripe checkout UI
- funnel-specific step components
npm package: @funnelsgrove/payments
Description: Shared billing and checkout helpers for funnels.
Latest version: 0.1.0

# @funnelsgrove/payments

Shared billing and checkout helpers for funnels.

## Build And Publish

- Build distributable output with `npm run build --workspace @funnelsgrove/payments`.
- Publish from the repo root with `npm publish --workspace @funnelsgrove/payments --access public`.
- The package pins `@funnelsgrove/runtime` to the same exact version and the build resolves against the runtime package's emitted `dist` contract.

## Use This Package For

- Stripe plan loading and checkout integration
- global funnel billing catalog contracts
- reusable plan-selector and checkout UI
- billing catalog types and runtime helpers

## Responsibilities

- keep paywall behavior consistent across funnels
- define the shared billing types used by funnel-local catalogs
- expose one ordered funnel-local billing catalog contract

## What Belongs Here

- billing catalog types and normalization helpers
- Stripe SDK wiring
- checkout/plan-selector components

## What Does Not Belong Here

- funnel routing
- funnel analytics
- step-specific copy or layout
- funnel-owned billing catalog entries
- manifest validation
npm package: @funnelsgrove/runtime
Description: Shared funnel runtime contracts and helpers.
Latest version: 0.1.0

# @funnelsgrove/runtime

Shared funnel runtime contracts and helpers.

## Build And Publish

- Build distributable output with `npm run build --workspace @funnelsgrove/runtime`.
- Publish from the repo root with `npm publish --workspace @funnelsgrove/runtime --access public`.
- Local repo installs still resolve this package through npm workspaces when another workspace depends on version `0.1.0`.

## Use This Package For

- manifest types and validation
- route resolution and entry-point handling
- experiment assignment helpers
- preview-bridge parsing and preview/runtime detection
- published theme contract and CSS variable helpers
- funnel context, base controls, and reusable runtime UI primitives
- browser-safe API client helpers used by funnels

## Responsibilities

- keep funnel mechanics consistent across every funnel
- expose stable contracts for routing, previews, and step identity
- avoid funnel-specific copy, visual design, or billing plan catalogs

## What Belongs Here

- reusable runtime helpers that any funnel can use
- shared browser/event/storage helpers tied to funnel behavior
- hosted-path navigation helpers so static previews keep their `/published/f/...` or `/catalog/...` prefix
- generic context and base component primitives
- safe local-only fallbacks when no real SDK publishable key is configured
- default runtime config values for API/bootstrap wiring

## What Does Not Belong Here

- funnel-specific step JSX
- brand/theme assets
- billing catalog data
- analytics SDK transport
- Stripe checkout UI