Bootstrapwarebootstrapware

Features

What Bootstrapware Onboard includes

A narrow first-run setup checklist: next-step task CTAs, a celebrate card, Undo on skipped optional steps, dependencies, facts, mixed scope, BYO or Hosted progress, and published flow config.
Onboard embed at 0% with blocked copy until Create your workspace is complete.Onboard embed with required steps complete and an optional import still open.

Required and optional steps

Required and optional items in one flow. Skip optional items. Blocked items show Complete … first copy and no primary CTA. Up to 32 items per flow.

Next-step task CTA

The first incomplete unblocked item is highlighted as the next step. Items with href use a primary Continue (or ctaLabel) link; Mark complete is secondary. Items without href keep Mark complete primary. Clicking the href CTA does not auto-complete.

Mixed scope

User-scoped and workspace-scoped steps in one flow. Shared steps key off workspaceKey.

Facts reconciliation

Sticky facts on mount. Call completeStep from the host on real actions. factKey wins over item key.

Eligibility

Gate items and flows by role, plan, or flags (max 16). Presentation only; never overrides stored progress.

Celebrate card

When required setup is satisfied, the widget shows a You're all set card above the checklist. The progress bar, optional-remaining copy, skip, snooze, dismiss, and resume stay. Hide and Show collapse that card in this browser. hideWhenComplete collapses it again once required setup is complete.

Undo a skipped step

Skipped optional steps show Undo and Mark complete. Undo calls optional unskipStep and deletes that skipped progress row. A stored skip counts only while the step stays optional. If that step later becomes required, the leftover skip is ignored.

Section, modal, window, or launcher

presentation is section, modal, window, or launcher, with optional defaultOpen. theme is light or dark. Omit theme and the checklist stays the light default. Hosts skin with --bsw-ob-* tokens. Progress and hosted-config load errors show Retry instead of an empty checklist.

Dismiss and snooze

Dismiss hides without 100% progress. Snooze tucks the widget away (default 1d and 7d) without stealing focus.

Completion semantics

requirementsSatisfied vs completionTransitionRecorded. Copy-only revisions do not re-fire flow_completed.

Integration summaries

reportOutcome for integration-reported outcomes. Hosted webhooks or BYO onEvent. Opaque ids only.

Preview and rollback

Preview never writes progress. Restore copies an immutable revision into draft, then republish.

BYO adapter

Full OnboardAdapter including reportOutcome. Progress on your API. Published config still loads with a publishable key.

Hosted progress

Omit adapter; pass flowId + publishableKey. Live Hosted requires authorToken from your BFF.

Host-asserted identity

Pass user={{ id }} and workspaceKey. Bootstrapware does not authenticate end users.

Flow configuration

Items (optional href and ctaLabel), eligibility, requireAuthorToken, empty state, snooze days, origins, branding. Draft until you publish. ctaLabel round-trips dashboard, MCP, published config, and the widget.

Configuration revisions

Every publish is a revision. MCP list_revisions and restore_revision. Step keys keep progress across restores.

Test and live environments

bsw_test_* and bsw_live_* keys. Live config needs BYO or Hosted entitlement. Local adapter stays free.

Operational sessions

Dashboard usage metadata: started, completed, test vs live. Never host context. Counts are not invoices.

Webhooks

Hosted flow events with HMAC signing. Identifiers only. BYO uses onEvent on your backend.

MCP for flow config

Create, draft, publish, restore. Never host context or flags. Keys, webhooks, and billing stay dashboard-only.

Author tokens

BFF-minted assertions for live Hosted. Default permissions omit reset. Widget never mints tokens.

Parked (not shipped): product tours, welcome modals, visual builder, CDP, A/B, NPS, MAU billing, inferred clicks, email/SMS nudges, realtime co-browsing.