feat: turn into public integration playground#1
Open
anyelopetit wants to merge 3 commits into
Open
Conversation
Member
|
The images are broken. |
Collaborator
Author
Already fixed it. Sorry for that |
9792fde to
6b2e1ef
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Turn
hellotext-react-testInto a Public Integration PlaygroundSummary
This PR transforms the existing
hellotext-react-testapp from a minimal Create React App starter (with hardcoded values and default boilerplate) into a fully functional integration playground for the public Hellotext JavaScript SDK. The playground is designed for customers and internal QA to quickly verify SDK features — tracking events, forms, webchat, UTM capture, and session management — without editing source code or accessing the main Hellotext codebase.What Changed
Dependency & Build
git://github.com/hellotext/hellotext.js#b8e3f92...(pinned SHA)@hellotext/hellotext: ^2.4.0(public npm)@hellotext/hellotext/styles/index.cssimported inindex.jsmy-apphellotext-playgroundreportWebVitals.js,logo.svg,whatwg-fetchdevDepNew Components (all in
src/components/)SetupScreen.jsDashboard.jsSessionPanel.jsHellotext.sessionand listens forsession-setUtmPanel.jsutm-setTrackingPanel.jsproduct.viewed,cart.added,checkout.started) + custom event inputFormsPanel.jsdata-hello-form, listens forforms:collected/form:completedWebchatPanel.jsmounted,opened,closed,message:sent/received)EventLog.jsHellotextLogo.jscurrentColorBranding & Design
#5d00b2(buttons, interactive elements), accent orange#ff4a00(logo), white backgrounds.Documentation
README.mddocs/USER_MANUAL.mdScreenshots
Setup Screen — Login with Business ID
The first screen users see. Enter a public Business ID (and optionally a Webchat ID) to initialize the SDK. Values persist in localStorage.
Session Panel
Displays the current
Hellotext.sessiontoken. Thesession-setevent fires when the session is assigned and appears in the Event Log.UTM Capture Panel
Shows how the SDK captures UTM parameters from the URL. Includes a "Test URL" button to reload with sample params and a table displaying captured values.
Tracking Events Panel
Fire preset tracking events (
product.viewed,cart.added,checkout.started) or enter a custom event name with JSON params. Each call logs success/error in the Event Log.Forms Panel
Enter a Form ID to mount a
<div data-hello-form="...">element. The SDK discovers and renders the form. Listens forforms:collectedandform:completedevents.Webchat Panel
Monitors webchat lifecycle events. If webchat is configured for the business, the widget appears in the bottom-right corner. Events like
webchat:mounted,webchat:opened, andwebchat:message:sentappear in the log.How to Test
Quick verification
Automated tests
yarn test --watchAll=falseAll 7 tests pass:
Production build
yarn build # Outputs to build/ — no warnings, no errors