TurboDocx / TurboDocx/SDK

feat(sdk): <TurboSignForm> embed widget (React + web component) wrapping the completion postMessage

Open
#78 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
1
Forks
0
Avg merge
12h 19m
Merged PRs (30d)
2

Description

Summary

Ship a <TurboSignForm> React component + a framework-agnostic web component that wraps the embedded signing iframe, so integrators don't hand-roll the postMessage plumbing. This is the piece most competitors ship (DocuSeal <DocusealForm>, Documenso @documenso/embed-react, Dropbox Sign hellosign-embedded, PandaDoc pandadoc-signing) that a bare-iframe integration lacks.

What it does

  • Takes an embedUrl (from TurboSign.createEmbeddedSignature(...)recipients[].embedUrl) and renders the iframe with sensible sizing.
  • Listens for the turbosign:completed postMessage and exposes callbacks: onCompleted({ documentId }), and (when we add them) onDeclined / onError.
  • Bakes in the origin check (only accept messages from the known TurboSign origin) — the BoldSign pattern — so integrators can't forget it.
  • Ships as @turbodocx/embed-react (React) + a <turbosign-form> web component for other frameworks.

Context

Fast-follow to the createEmbeddedSignature convenience method (SDK PR #77). Competitive research: DocuSeal/Documenso/Dropbox Sign/PandaDoc all provide a widget; only BoldSign leaves you on a bare iframe.

Acceptance

  • <TurboSignForm embedUrl onCompleted /> renders the iframe and fires onCompleted on turbosign:completed, with the origin pinned.
  • A framework-agnostic web component with the same behavior.
  • Docs + an example using it (replace the hand-rolled listener in examples/embedded-web-app).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing examples/embedded-web-app and the createEmbeddedSignature context from SDK PR #77 to understand the existing iframe and postMessage flow. Done means a React component and framework-agnostic web component render the embedUrl, handle the completion message with a pinned origin, and include updated docs and an example replacing the hand-rolled listener.

Written by the indexing model from the issue text.

Assessment

Tech stack
react
Domain
documentation, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.