feat: add Typeform embed support with /typeform/:id route#13033
Closed
feat: add Typeform embed support with /typeform/:id route#13033
Conversation
Implements a new modal screen for displaying Typeform surveys using the
Typeform embed SDK. The component integrates with analytics tracking to monitor
survey engagement.
Key features:
- Embeds Typeform surveys via WebView using the official embed.js SDK
- Modal presentation with custom header ("Survey")
- Tracks survey viewed, submitted, and abandoned events
- Fullscreen form display with hidden Typeform branding
- Thank you screen with close button after submission
- Generic survey tracking hook for reusability
Technical implementation:
- New /typeform/:id route with alwaysPresentModally option
- WebView with HTML embedding Typeform SDK's createWidget() API
- Event handling via window.ReactNativeWebView.postMessage bridge
- Renamed useTypeformTracking to useSurveyTracking for generic use
- CSS to ensure fullscreen display and hide Typeform close button
Contributor
MounirDhahri
approved these changes
Dec 2, 2025
Member
MounirDhahri
left a comment
There was a problem hiding this comment.
Really nice! This opens so many opportunities!
| queries: [TagScreenQuery], | ||
| }, | ||
| { | ||
| path: "/typeform/:id", |
Member
There was a problem hiding this comment.
nice! maybe we can add this to AndroidManifest.xml to allow opening this with a deep link
Comment on lines
+43
to
+44
| action: "surveySubmitted" as ActionType, | ||
| context_screen_owner_type: "survey" as OwnerType, |
Member
There was a problem hiding this comment.
can we add this to cohesion at a later stage 👀
Member
There was a problem hiding this comment.
nitpiclk: Do you mind moving this within hooks like here
Member
Author
|
Going to close this for now. Had some trouble getting survey events to propagate correctly and we ended up not needing an in-app survey for the experiment we ran. |
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.
Important
I'm not planning to merge this PR until we have aligned on the survey content and prompt logic.
Description
Implements a new modal screen for displaying Typeform surveys using a customized WebView. The component integrates with analytics tracking to monitor survey engagement.
Key features:
Technical implementation:
Jira: ONYX-1984 🔒
PR Checklist
To the reviewers 👀
Changelog updates
Changelog updates
Cross-platform user-facing changes
Screen Recording
Simulator.Screen.Recording.-.iPhone.16e.-.2025-11-24.at.20.01.17.mov
Need help with something? Have a look at our docs, or get in touch with us.